The other day Carl made a useful comment:
Terminals and command lines scare me. Do you have any dev tips on getting started with these or know any good resources?
And it made me realize I also was scared to use the Terminal at one point. It is one of these things wherein the beginning. You just don't know what's happening.
So let's walk through some basic commands today, which will make us more comfortable using the Terminal.
Which Terminal to Use?
Perhaps a good starting point is which Terminal to use. To be honest, it's much of a preferred choice than actually making a difference. But I use iTerm2, which works beautifully!
If you rather stick to another choice or the default Terminal, be my guest. It won't make a difference in what we are going to do today.
Basic Terminal Commands
Oke, let's get cracking on some commands.
Bash Change Directory
cd command means
change-directory, which is the same as clicking on a folder on your regular desktop.
cd Desktop // move into the desktop "folder"
We can also go up one level by using
cd .. // Or even multiple levels cd ../../
We can always go back to the starting point by using
cd without arguments.
Bash Where are We?
You forget where you are now and then, and you want to know the current folder.
You can use the
Print Working Directory.
pwd // Return something like: /Users/chrisbongers/Desktop
Another handy command is
ls; it means
list and can be used to show folders inside the directory we are in.
ls // Show current directory ls .. // Show parent directory ls Desktop // Show specific directory
Bash Creating Folders
Sometimes it's easier to create a folder in the Terminal because you are already there.
We can use
make directory for this.
Be careful when using remove commands. The Terminal is strong and can remove system files, so use these with care.
We can use
Remove Directory to remove a folder.
Or we can use
Remove in general.
rm command, we can give it the
-r parameter, which stands for
recursive. It will delete everything inside the folder you pass.
rm -r NewApp
We can also copy folders and files with the Terminal by using the
cp testfile.txt test2.csv
Where the first argument is the source and the second the destination file.
We can also copy a complete folder and contents:
cp -r NewApp TestApp
Another excellent command is
Move. It works the same as the
cp one but will move the elements instead of copying them.
mv testfile.txt Desktop/testfile2.txt
As you can see, we can even move and rename.
Bash Creating Files
Perhaps the most interesting one is the ability to create files.
There are multiple ways of creating files, the most common is
touch, but my personal favorite is
Nano works great because it's generic. It can create but also edit a file at the same time.
nano testfile.txt // Will create the file and open it!
Once you open a file in
nano you can type whatever you want, and once you are done, use
CTRL+X to close and save the file.
I hope these Terminal commands were helpful, and I challenge you to have a play around with these.
Let me know in the comments if there are any really good ones I might have missed.