Shell
rsync - recursive file copying
rsync --progress --recursive --update "/path/to/source/files/*" "/path/to/destination"
read
copy a file
\cp "/full/path/to/file" "/full/path/to/new/destination"
BASH:
create an alias
# Open the file where the alias should be added
gedit ~/.bashrc
# Syntax for adding the alias
alias alias_name="alias command"
CSH:
create an alias
# Open the file where the alias should be added
gedit ~/.cshrc
# Syntax for adding the alias
alias alias_name "alias command"
# Syntax for adding a variable
alias alias_name "alias command \!$"
# Running "alias_name test" will run "alias command test"
# Syntax for multi-line aliases
alias aliasname "alias command 1 ; alias command 2"
TMUX
shell commands
# Start a tmux session
tmux
# Get a list of all tmux sessions
tmux ls
# Attach an existing session
tmux attach -t session_name
key bindings within tmux
ctrl d = close a pane / window
page up / page down = scroll up / down
ctrl b = prefix
prefix $ = renames the current session
prefix c = creates a new window
prefix , = renames the current window
prefix [0-9] = selects a window
prefix n = selects the next window
prefix % = split window horizontally
prefix " = split window vertically
prefix [arrow key] = select pane
prefix ctrl [arrow key] = resize the current pane
prefix z = full screen the current pane
prefix & = kills the current window
prefix x = kills the current pane
prefix d = detaches the session
prefix ?: get list of all key bindings
VIM
the absolute basics
: = enters command line mode
w = write
q = quit
i = enters insert mode
esc = exits insert mode