2014-10-20
Learning a few UNIX commands can be useful. Since it’s the ‘default’ programming language that pops up when you run the Terminal, it’s worth knowing a few of the more basic commands: These are sorted by ‘difficulty’ - you should know the first ones first.
cd - changes
the current directory.cd ~ - changes where you are to HOME directorycd Documents - goes one file deeper into the
‘Documents’ foldercd .. - goes up one directoryls
- list files or directories in current directoryls -la - uses the options ‘-l’ (list in detail) and
‘-a’ (show hidden files)pwd - print working
directory. Shows where you are (relative to the root
folder)
cp - copycp anchovy.txt fishes/anchovy.txt - creates a copy of
the file under the ‘fishes’ directory.cp -r - copy recursively. Useful for directories.
cp -r anchovy fishes/anchovy - copies all the
anchovy-related files from the folder ‘anchovy’rm - removerm platypus.txt - deletes the specified filermdir - remove
directorymv - movemv anchovy.txt fishes/anchovy.txt - moves &
removes the file.mv anchovy.txt sardine.txtmkdir - creates a
new directorymkdir pelicansmkdir -p - creates a series of new directories.
mkdir -p Pelecanidae/Pelicans/Great-White-Pelicanman - find the
manualman manman pwdcat -
show pure text version of the file.cat gerbil_name.txt - simply outputs text: ‘Fred’less -
outputs text with more features.less encyclopedia.txt - won’t crash & is still
usefulsort - guess what
this one does…diff -
shows the differences between two filesdiff red_spotted_woodpecker.txt lesser_woodpecker.txtwhereischmodchmod 755,
which is rwx for the Owner but only rw for
other users.grepI’ve written a quick primer on UNIX file permissions here
Grep’s a fairly big topic:
grep "some string" filenamegrep "REGEX" filenamegrep -i "some string" filename - case insensitiveFlags are optional parameters that you can pass in to a shell
command. We’ve met some already; here’re two: ls -la. You
can see a full list of available options under the man page
of the commands.