Lesson 3
Using Linux Terminal
Linux Terminal is the same thing as the DOS prompt or CMD in Windows. It does the same thing.
But it has different commands.
Terminal Keyboard shortcuts
Tab ⇆ : Autocompletes from the cursor position.
Ctrl+a : moves the cursor at the beginning of the line (equivalent to the key Home).
Ctrl+e : (end) moves the cursor at the line end (equivalent to the key End).
Ctrl+p : (previous) recalls the previous command (equivalent to the key ↑).
Ctrl+n : (next) recalls the next command (equivalent to the key ↓).
Ctrl+o : executes the found command from research.
Ctrl+l : clears the screen content (equivalent to the command clear
).
Ctrl+u : clears the line content before the cursor and copies it onto the clipboard.
Ctrl+k : clears the line content after the cursor and copy it in the clipboard.
Ctrl+w : clears the word before the cursor and copy it in the clipboard.
Ctrl+d : sends an EOF marker, which (unless disabled by an option) closes the current shell (equivalent to the command exit
). (Only if there is no text on the current line)
Ctrl+c : sends the signal SIGINT to the current task, which aborts and closes it.
Ctrl+z : sends the signal SIGTSTP to the current task, which suspends it. To return to it later one can
enter fg ['process name or job id']
(foreground).
Ctrl+x Ctrl+x : (because x has a crossing shape) alternates the cursor with its old position.
Alt+f : (forward) moves forward the cursor of one word.
Alt+b : (backward) moves backward the cursor of one word.
Alt+Del : cuts the word before the cursor.
Alt+d : cuts the word after the cursor.
Alt+u : capitalizes every character from the cursor's position to the end of the current word.
Alt+l : lowers the case of every character from the cursor's position to the end of the current word.
Alt+c : capitalizes the character under the cursor and moves to the end of the word.
Alt+r : cancels the changes and put back the line as it was in the history.
Every Command that you need to know!
Viewing, copying, moving and deleting files
ls | Display the contents of the current directory |
ls -a | Display also hidden files and hidden directories |
| |
cp filename /path/dir_name | Copy filename into directory /path/dir_name |
cp -r dir_name /path/dir_name2 | Copy the entire dir_name into /path/dir_name2 |
cp filename1 filename2 /path/dir_name | Copy filename1 and filename2 into /path/dir_name |
| |
rm name | Remove a file or directory called name |
rm -r name | Remove an entire directory as well as its included files and subdirectories |
| |
mv filename /path/dir_name | Move filename into /path/dir_name |
mv filename1 filename2 | Rename filename1 to filename2 |
| |
cat filename | Display filenames contents |
| |
more filename | Display filename in pages. Use spacebar to view next page |
| |
head filename | Display filenames first 10 lines |
head -15 filename | Display filenames first 15 lines |
| |
tail filename | Display filenames last 10 lines |
tail -15 filename | Display filenames last 15 lines |
| |
pwd | Display current directory |
| |
cd /path/dir_name | Change to directory /path/dir_name |
cd .. | Go 1 directory up |
| |
mkdir dir_name | Create directory dir_name |
rmdir dir_name | Delete directory dir_name |
Finding files and text within files
updatedb | Update (create first time used) a database of all files under the root directory / |
locate filename | Find file filename searching in the database |
| |
find / -name filename | Starting from the root directory search for the file called filename |
find / -name *filename | Same as above but search for file containing the string filename |
| |
grep string /path/dir_name | Starting from /path/dir_name search for all files containing string |
| |
which application_name | Search $path for application app_name |
whereis application_name | Search $path, man pages and source files for application_name |
Archived files
Decompress
tar -xzf filename.tgz | Decompress tzg file |
tar -xzf filename.tar.gz | Decompress tar.gz file |
tar -xjf filename.tar.bz2 | Decompress tar.bz2 file |
Compress
tar -czf filename.tar /path/dir_name | Compress directory /path/dir_name to filename.tar |
gzip -c filename > filename.gz | Compress /path/dir_name to filename.tar.gz |
bzip2 -c filename > filename.bz2 | Compress /path/dir_name to filename.tar.bz2 |
Using rpm files
rpm -hiv package.rpm | Install rpm called package.rpm |
rpm -hiv --force package.rpm | Install rpm called package.rpm by force |
rpm -hUv package.rpm | Upgrade rpm called package.rpm |
rpm -e package.rpm | Delete rpm called package.rpm |
rpm -qpil package.rpm | List files in not-installed rpm called package.rpm |
rpm -ql package.rpm | List files in installed rpm called package.rpm |
rpm -q str | List installed rpms containing the string str |
rpm -qf /path/application_name | Display the rpm that contains application application_name |
Starting and Stoping
startx | Start the X system |
shutdown -h now | Shutdown the system now and do not reboot |
halt | Same as above |
shutdown -r now | Reboot |
reboot | Same as above |
shutdown -r +10 | Reboot in 10 minutes |
Mounting filesystems
mount -t vfat /dev/sd(a)(1) /mnt/c_drive | Mount the first partition 1 of the first hard disk drive a which is in fat32 vfat dormat under /mnt/c_drive directory |
mount -t iso9660 /dev/cdrom /mnt/cdrom | Mount cdrom under /mnt/cdrom directory |
| |
umount /mnt/hda1 | Unmout the above |
User administration
users | Display users currently logged in |
adduser username | Create a new user called username |
passwd username | Define password for user called username |
who | List logged-in users |
whoami | Display current user |
finger username | Displays info about user username |
su | Log in as root from current login |
su - | Log in as root from current login and take root's path |
exit | Exit from console login (ie, logout). |
Processes
command | Execute command in the foreground |
command & | Execute command in the background |
ctrl+z | Suspend a program |
ctrl+c | Interrupt a program |
ps | List all processes |
kill -9 pid | Kill process with id pid |
top | Monitor processes in real time |
Networking
hostname | List the system's hostname |
ifconfig | Set/Display network information |
host ip | Resolves ip's hostname |
ping ip/hostname | Check if ip/hostname is reachable |
traceroute ip/hostname | Find network path to ip/hostname |
System Information
uname -a | General system information |
fdisk -l | List partition tables |
cp filename /path/dir_name | Copy filename into directory /path/dir_name |
df -T -h | List filesystem disk space usage |
lspci | List PCI devices |
lsusb | List USB devices |
free -m | Display RAM+Swap usage |
Program Compile
gcc -o output file.c | Compile a C program |
./output | Run a C program you have compiled |
g++ -o output file.cpp | Compile a C++ program |
./output | Run a C++ program you have compiled |
./configure && make && su -c 'make install' | Configure, compile and install a program with Makefile |