First of all, Nautilus is Gnome, not KDE. The browser for KDE is Konqueror or Dolphin. That said, the basic commands that you would need to know to be productive in the terminal are...
Navigating
Use cd folder
to navigate to the specified folder. Use ls -l
to show the contents of the current folder (including the permissions), and ls -l folder
to list the contents and permissions of the given folder. Use ls -la
and ls -la folder
to do the same thing while including hidden files/folders.
Permissions
When you use ls with the "-l" flag, it will show you permissions that look like drwxrwxrwx, with each of those letters possibly replaced with a dash. The 'd' tells you whether it is a directory (so "-rwxrwxrwx" is a file while "drwxrwxrwx" is a folder). The first triple of "rwx" corresponds to the "user" (owner) of the item, the second corresponds to the "group", and the third corresponds to "others" (everyone else). You can use chmod
to change the permissions of a given item. For example chmod a+x myscript.sh
adds the "executable" permission to all users (user, group, others). The command chmod go-rwx supersecretfolder
removes read, write, and executable permissions to the group and others for "supersecretfolder".
Creating/Removing
You can create files using the touch
command, which will create an empty file if one doesn't exist, or it will update the modification date of the file, if it already exists. So, touch main.cpp
will create a file named "main.cpp" in your current directory if it doesn't already exist.
You can remove files using the rm
command, HOWEVER, this is an incredibly dangerous command, and so I will strongly urge you to instead use the mv
command, which moves/renames files, and move them to the trash. I usually create a symbolic link from ~/.Trash to where the trash is actually located, and then I simply delete things using mv item_to_delete ~/.Trash/
which moves it to the trash.
Editing
There are plenty of editors that can run in the terminal. However, you should probably just use gedit
which is not a terminal-based editor. You can open up your file in gedit with the following command:
gedit myfile >/dev/null 2>&1 & # I'm assuming BASH is your default shell
When I am absolutely required to edit something in the terminal, then I use nano
, which you can invoke using the following, very simple command:
nano myfile
Other editors that you can use in the terminal include vim
, vi
, and emacs
.
Copying
You can copy items using cp -rf original destination
.
Symbolic Links
You can create symbolic links with ln -s original destination
.
Opening a File in Firefox
You can open a file in firefox using firefox filename >/dev/null 2>&1 &
Opening Files with the Default Handler
I am not familiar with how to do this using KDE, but in Gnome, you can open a file using the default application that is configured to handle it by using the command gnome-open
as in:
gnome-open myfile.cpp
If, in Gnome, you have registered the file extension ".cpp" with Anjuta C++, for example, then Anjuta C++ will be automatically opened and launched as if you had double-clicked on "myfile.cpp" in Nautilus.
Sources/References
For more information, you should take a look at the following man pages:
Pros/Cons
So, to answer your question... initially, it takes some time getting familiar with the terminal, and you will frequently have to consult the man pages to figure out how to do some things. However, as you become more experienced, you will find that it is significantly faster to do things in the terminal. I used to be very GUI-centric myself, but I now use the Terminal almost exclusively, because it is so much faster. Not only is it faster to type things (especially with BASH autocompletion) than it is to navigate with the mouse, but repeated tasks can often be automated, and you can use the BASH command history to reinvoke previous commands or slightly modified versions of previous commands. In the long run, making the switch is definitely worth it. That said, some things, like editing documents, does not make sense to do in the terminal... for example, I will probably always be more productive editing code with GEdit than I will be with vim or emacs, but launching GEdit from the Terminal instead of moving the mouse around is faster.