Skip to content
Snippets Groups Projects
Commit bc967255 authored by Fanny Wegner's avatar Fanny Wegner
Browse files

Delete UNIX_HPC_cheat_sheet.md

parent b2db176e
No related merge requests found
# Bash Cheat Sheet
A cheat sheet for bash commands.
## Manage and navigate directories
```bash
pwd # Print current directory path
ls # List directories
ls -a|--all # List directories including hidden
ls -l # List directories in long form
ls -l -h|--human-readable # List directories in long form with human readable sizes
cd foo # Go to foo sub-directory
cd # Go to home directory
cd ~ # Go to home directory
cd - # Go to last directory
mkdir foo # Create foo directory
rmdir foo # Delete foo directory
rmdir -r foo # Delete foo directory including content
```
## Manage files
```bash
cp foo.txt bar.txt # Copy file
mv foo.txt bar.txt # Move/Rename file
rm foo.txt # Delete foo.txt
rm * # Delete all files in current directory
ln -s foo bar # Create a link 'bar' to the file 'foo'
```
## Read and manipulate files
```bash
cat foo.txt # Print all contents
less foo.txt # Print some contents at a time (g - go to top of file, SHIFT+g, go to bottom of file, /foo to search for 'foo')
head foo.txt # Print top 10 lines of file
tail foo.txt # Print bottom 10 lines of file
nano foo.txt # Simple file editor
vi foo.txt # Advanced file editor
wc foo.txt # List number of lines words and characters in the file
cut -d [delimiter] -f [field] foo.txt # Cuts out the specified fields that are separated by the specified delimiter
```
## Input and Output
```bash
echo "Hello world!" # Print statement to standard output
echo "foo" > bar.txt # Direct output into file. Overwrites file if it already exists.
echo "foo" >> bar.txt # Direct output into file and append if it already exists.
command1 | command2 # Directs output from command1 as standard input into command2
```
<br><br>
# SLURM Cheat Sheet
## Connect to Science Cluster
```bash
ssh shirtname@cluster.s3it.uzh.ch
```
## Submitting jobs
In a script `myjob.sh`:
```bash
#!/usr/bin/env bash
#SBATCH --cpus-per-task=[number]
#SBATCH --mem=[memory]
#SBATCH --time=[hr:min:sec]
#SBATCH --job-name=[name]
#SBATCH --output=[name]_%j.out
#SBATCH --error=[name]_%j.err
# load any required modules
module load [module name]
command1
command2
command3
```
Submit script as job to the computing nodes:
```bash
sbatch myjob.sh
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment