SlideShare una empresa de Scribd logo
1 de 159
The Unix and GNU/Linux  Command Line  Nguyen Vu Hung – VINICORP  [email_address] 2010/09/21 Based on “intro_unix_linux” by Michael Opdenacker  from Free Electrons
Best viewed with... This document is best viewed with a recent PDF reader or with  OpenOffice.org  itself! ,[object Object]
Find pages quickly thanks to automatic search
Use thumbnails to navigate in the document in a quick way
Command memento sheet It is a useful companion to this presentation. Examples for the most useful commands are given in just one sheet. Suggestions for use Stick this sheet on your wall, use it as desktop wallpaper, make it a mouse mat, print it on clothing, slice it into bookmarks... Caution Store away from mice!
Training Contents (1) Shells, filesystem and file handling ,[object Object]
GNU / Linux filesystem structure
Command line interpreters
Handling files and directories
Displaying, scanning and sorting files
Symbolic and hard link
File access rights
Training contents (2) Standard I/O, redirections, pipes ,[object Object]
Pipes: redirecting standard output to other commands
Standard error
Training Contents (3) Task control ,[object Object]
Executing in background, suspending, resuming and aborting
List of active tasks
Killing processes
Environment variables
PATH environment variables
Shell aliases, .bashrc file
Training contents (4) Miscellaneous ,[object Object]
Compressing and archiving
Printing files
Comparing files and directories
Looking for files
Getting information about users
Training contents (5) System administration basics ,[object Object]
Setting up networking
Filesystems: creating and mounting Going further ,[object Object]
Searching the Internet for resources
Training contents (6) Basic LAMP Administration ,[object Object]
Apache
MySQL
PHP Going further ,[object Object]
LAMP on CentOS (Redhat)
GNU/Linux and Free Software ,[object Object]
Philosophy of the GNU Project ,[object Object]
Why Software Should Not Have Owners
Copyleft
Free Documentation
Selling Free Software is OK
The Unix and GNU/Linux command line Unix Filesystem
Everything is a file ,[object Object]
Directories Directories are just files listing a set of files
Symbolic links Files referring to the name of another file ,[object Object]
Pipes Used to cascade programs cat *.log  |  grep error
Sockets Inter process communication Almost everything in Unix is a file!
File names File name features since the beginning of Linux ,[object Object]
No obvious length limit
Can contain any character (including whitespace, except  / ). File types stored in the file (“magic numbers”). File name extensions not needed and not interpreted. Just used for user convenience.
File name examples: README .bashrc Windows Buglist index.htm index.html index.html.old
File paths A  path  is a sequence of nested directories with a file or directory at the end, separated by the  /  character ,[object Object]
Absolute path:  /home/bill/bugs/crash9402031614568
/  :  root directory . Start of absolute paths for all files on the system (even for files on removable devices or network shared).
GNU/Linux filesystem structure (1) Not imposed by the system. Can vary from one system to the other, even between two GNU/Linux installations! / Root directory /bin/ Basic, essential system commands /boot/ Kernel images, initrd and configuration files /dev/ Files representing devices /dev/hda : first IDE hard disk /etc/ System configuration files /home/ User directories /lib/ Basic system shared libraries
GNU/Linux filesystem structure (2) /lost+found Corrupt files the system tried to recover /media Mount points for removable media: /media/usbdisk ,  /media/cdrom /mnt/ Mount points for temporarily mounted filesystems /opt/ Specific tools installed by the sysadmin /usr/local/  often used instead /proc/ Access to system information /proc/cpuinfo ,  / proc/version  ... /root/ root user home directory /sbin/ Administrator-only commands /sys/ System and device controls (cpu frequency, device power, etc.)
GNU/Linux filesystem structure (3) /tmp/ Temporary files /usr/ Regular user tools (not essential to the system) /usr/bin/ ,  /usr/lib/ ,  /usr/sbin ... /usr/local/   Specific software installed by the sysadmin (often preferred to  /opt/ ) /var/ Data used by the system or system servers /var/log/ ,  /var/spool/mail  (incoming      mail),  /var/spool/lpd  (print jobs)... The Unix filesystem structure is defined by the Filesystem Hierarchy Standard (FHS): http://www.pathname.com/fhs/
The Unix and GNU/Linux command line Shells and File Handling
Command line interpreters ,[object Object]
Called “shells” because they hide the details on the underlying operating system under the shell's surface.
Commands are input in a text terminal, either a window in a graphical environment or a text-only console.
Results are also displayed on the terminal. No graphics are needed at all.
Shells can be scripted: provide all the resources to write complex programs (variable, conditionals, iterations...)
Well known shells Most famous and popular shells ,[object Object]
csh : The C shell (obsolete) Once popular shell with a C-like syntax
tcsh : The TC shell  (still very popular) A C shell compatible implementation with evolved features (command completion, history editing and more...)
bash : The Bourne Again shell (most popular) An improved implementation of sh with lots of added features too.
fish: a great new shell The Friendly Interactive SHell http://www.fishshell.org/ ,[object Object]
Brand new features: command option completion, command completion with short description, syntax highlighting..
Easier to any open files:  open  built-in command.
Much simpler and consistent syntax (not POSIX compliant) Makes it easier to create shell scripts.  Command line beginners can learn much faster! Even experienced users should find this shell very convenient.
ls command ,[object Object]
ls -l  (long) Long listing (type, date, size, owner, permissions)
ls -t  (time) Lists the most recent files first ,[object Object]
ls -r  (reverse) Reverses the sort order
ls -ltr  (options can be combined) Long listing, most recent files at the end Lists the files in the current directory, in alphanumeric order, except files starting with the “ . ” character.
File name pattern substitutions Better introduced by examples! ,[object Object]
ls -d .* Lists all the files and directories starting with  . -d  tells  ls  not to display the contents of directories.
cat ?.log Displays all the files which names start by 1 character and end by  .log
Special directories (1) ./ ,[object Object]
So  ./readme.txt  and  readme.txt  are equivalent. ../ ,[object Object]
Typical usage: cd ..
Special directories (2) ~/ ,[object Object]
Cannot be used in most programs, as it is not a real directory. ~sydney/ ,[object Object]
The cd and pwd commands ,[object Object]
cd - Gets back to the previous current directory.
pwd Displays the current directory ("working directory").
The cp command ,[object Object]
cp file1 file2 file3 ... dir Copies the files to the target directory (last argument).
cp -i  (interactive) Asks for user confirmation if the target file already exists
cp -r <source_dir> <target_dir>   (recursive) Copies the whole directory.
Smart directory copy with rsync rsync  (remote sync) has been designed to keep in sync directories on 2 machines with a low bandwidth connection. ,[object Object]
Only transfers the blocks that differ within a file!
Can compress the transferred blocks
Preserves symbolic links and file permissions: also very useful for copies on the same machine.
Can work through ssh (secure remote shell). Very useful to update the contents of a website, for example.
rsync examples (1) ,[object Object],-a : archive mode. Equivalent to  -rlptgoD ... easy way to tell you want recursion and want to preserve almost everything. ,[object Object],-P :  --partial  (keep partially transferred files) and  --progress  (show progress during transfer) --delete : delete files in the target which don't exist in the source. Caution : directory names should end with  /  .  Otherwise, you get a backup/work /  directory at the destination.
rsync examples (2) ,[object Object],rsync -Pav /home/vuhung/work/001.svn/ vuhung@192.168.52.123:/home/work/002.ipad/ User  vuhung  will be prompted for a password. ,[object Object],rsync -Pav -e ssh vuhung@192.168.52.123:/home/vuhung/work/ tmp/work/ User  vuhung  will be prompted for his ssh key password.
mv and rm commands ,[object Object]
mv -i   (interactive) If the new file already exits, asks for user confirm
rm file1 file2 file3  ... (remove) Removes the given files.
rm -i  (interactive) Always ask for user confirm.
rm -r dir1 dir2 dir3  (recursive) Removes the given directories with all their contents.
Creating and removing directories ,[object Object]
rmdir dir1 dir2 dir3  ...  (remove dir) Removes the given directories Safe: only works when directories and empty. Alternative:  rm -r  (doesn't need empty directories).
Displaying file contents Several ways of displaying the contents of files. ,[object Object]
more file1 file2 file3 ... After each page, asks the user to hit a key to continue. Can also jump to the first occurrence of a keyword ( /  command).
less file1 file2 file3 ... Does more than  more  with less. Doesn't read the whole file before starting. Supports backward movement in the file ( ?  command).
The head and tail commands ,[object Object]
tail [-<n>] <file> Displays the last <n> lines (or 10 by default) of the given file. No need to load the whole file in RAM! Very useful for huge files.
tail -f <file>   (follow) Displays the last 10 lines of the given file and continues to display new lines when they are appended to the file. Very useful to follow the changes in a log file, for example.
Examples head windows_bugs.txt tail -f outlook_vulnerabilities.txt
The grep command ,[object Object]
grep error *.log Displays all the lines containing  error  in the  *. log  files
grep -i error *.log Same, but case insensitive
grep -ri error . Same, but recursively in all the files in  .  and its subdirectories
grep -v info *.log Outputs all the lines in the files except those containing  info .
The sort command ,[object Object]
sort -r <file> Same, but in reverse order.
sort -ru <file> u : unique. Same, but just outputs identical lines once.
More possibilities described later!
Symbolic links A symbolic link is a special file which is just a reference to the name of another one (file or directory): ,[object Object]
Example: anakin_skywalker_biography -> darth_vador_biography
How to identify symbolic links: ,[object Object]
GNU  ls  displays links with a different color.
Creating symbolic links ,[object Object]
To create a link with to a file in another directory, with the same name: ln -s ../README.txt
To create multiple links at once in a given directory: ln -s file1 file2 file3 ... dir
To remove a link: rm link_name Of course, this doesn't remove the linked file!
Hard links ,[object Object]
A  hard link  to a file is a regular file with exactly the same physical contents
While they still save space, hard links can't be distinguished from the original files.
If you remove the original file, there is no impact on the hard link contents.
The contents are removed when there are no more files (hard links) to them.
Files names and inodes Makes hard and symbolic (soft) links easier to understand!
File access rights 3 types of access rights ,[object Object]
Write access ( w )
Execute rights ( x ) 3 types of access levels ,[object Object]
Group ( g ): each file also has a “group” attribute, corresponding to a given list of users
Others ( o ): for all other users Use  ls -l  to check file access rights
Access right constraints ,[object Object]
Both  r  and  x  permissions needed for directories: x  to enter,  r  to list its contents.
You can't rename, remove, copy files in a directory if you don't have  w  access to this directory.
If you have  w  access to a directory, you CAN remove a file even if you don't have write access to this file (remember that a directory is just a file describing a list of files). This even lets you modify (remove + recreate) a file even without  w  access to it.
Access rights examples ,[object Object]
-rw-r----- Readable and writable for file owner, only readable for users belonging to the file group.
drwx------ Directory only accessible by its owner
-------r-x File executable by others but neither by your friends nor by yourself. Nice protections for a trap...
chmod: changing permissions ,[object Object]
Octal format (abc):  a,b,c = r*4+w*2+x  ( r ,  w ,  x : booleans) Example:  chmod 644 <file> ( rw  for  u ,  r  for  g  and  o )
Or symbolic format. Easy to understand by examples: chmod go+r : add read permissions to group and others. chmod u-w : remove write permissions from user. chmod a-x : ( a : all) remove execute permission from all.
More chmod (1) chmod -R a+rX folder/ Makes  folder  and everything in it available to everyone! ,[object Object]
X :  x , but only for directories and files already executable Very useful to open recursive access to directories, without adding execution rights to all files.
More chmod (2) chmod a+t /tmp ,[object Object]
Useful for directories with write access to anyone, like  /tmp .
Displayed by  ls -l  with a  t  character.
The Unix and GNU / Linux command line Standard I/O, Redirections, Pipes

Más contenido relacionado

La actualidad más candente

Linux Directory Structure
Linux Directory StructureLinux Directory Structure
Linux Directory StructureKevin OBrien
 
LINUX
LINUXLINUX
LINUXARJUN
 
Unix Linux Commands Presentation 2013
Unix Linux Commands Presentation 2013Unix Linux Commands Presentation 2013
Unix Linux Commands Presentation 2013Wave Digitech
 
Unix files
Unix filesUnix files
Unix filesSunil Rm
 
The unix file system
The unix file systemThe unix file system
The unix file systemgsandeepmenon
 
Unix file systems 2 in unix internal systems
Unix file systems 2 in unix internal systems Unix file systems 2 in unix internal systems
Unix file systems 2 in unix internal systems senthilamul
 
Files and directories in Linux 6
Files and directories  in Linux 6Files and directories  in Linux 6
Files and directories in Linux 6Meenakshi Paul
 
Unix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell ScriptUnix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell Scriptsbmguys
 
Linux file system nevigation
Linux file system nevigationLinux file system nevigation
Linux file system nevigationhetaldobariya
 
Mca ii os u-5 unix linux file system
Mca  ii  os u-5 unix linux file systemMca  ii  os u-5 unix linux file system
Mca ii os u-5 unix linux file systemRai University
 

La actualidad más candente (19)

File system discovery
File system discovery File system discovery
File system discovery
 
Linux Directory Structure
Linux Directory StructureLinux Directory Structure
Linux Directory Structure
 
LINUX
LINUXLINUX
LINUX
 
Linux Commands
Linux CommandsLinux Commands
Linux Commands
 
Unix Linux Commands Presentation 2013
Unix Linux Commands Presentation 2013Unix Linux Commands Presentation 2013
Unix Linux Commands Presentation 2013
 
Linux 4 you
Linux 4 youLinux 4 you
Linux 4 you
 
linux file system
linux file systemlinux file system
linux file system
 
Unix files
Unix filesUnix files
Unix files
 
The unix file system
The unix file systemThe unix file system
The unix file system
 
Unix File System
Unix File SystemUnix File System
Unix File System
 
Unix file systems 2 in unix internal systems
Unix file systems 2 in unix internal systems Unix file systems 2 in unix internal systems
Unix file systems 2 in unix internal systems
 
Linux file system
Linux file systemLinux file system
Linux file system
 
Files and directories in Linux 6
Files and directories  in Linux 6Files and directories  in Linux 6
Files and directories in Linux 6
 
Linux commands
Linux commands Linux commands
Linux commands
 
Unix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell ScriptUnix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell Script
 
Linux file system nevigation
Linux file system nevigationLinux file system nevigation
Linux file system nevigation
 
Mca ii os u-5 unix linux file system
Mca  ii  os u-5 unix linux file systemMca  ii  os u-5 unix linux file system
Mca ii os u-5 unix linux file system
 
Basic Unix
Basic UnixBasic Unix
Basic Unix
 
Linux training
Linux trainingLinux training
Linux training
 

Destacado

Procesoadministrativo 110920133858-phpapp02 (4)
Procesoadministrativo 110920133858-phpapp02 (4)Procesoadministrativo 110920133858-phpapp02 (4)
Procesoadministrativo 110920133858-phpapp02 (4)dinadanny
 
icredit-einvoicing
icredit-einvoicingicredit-einvoicing
icredit-einvoicingiCredit
 
Project of package sensorial , brayan , scarlet and kimberly
Project of package sensorial , brayan , scarlet and kimberlyProject of package sensorial , brayan , scarlet and kimberly
Project of package sensorial , brayan , scarlet and kimberlyvigilando
 
Guia para la formulacion de proyectos de investigacion icfes
Guia para la formulacion de proyectos de investigacion icfesGuia para la formulacion de proyectos de investigacion icfes
Guia para la formulacion de proyectos de investigacion icfesLuz Zuluaga
 
ProSoft Retail Offerings
ProSoft Retail OfferingsProSoft Retail Offerings
ProSoft Retail Offeringsrajpsft
 
East Algarve Magazine - AUGUST 2010
East Algarve Magazine - AUGUST 2010East Algarve Magazine - AUGUST 2010
East Algarve Magazine - AUGUST 2010Nick Eamag
 
VIII Encuentro Temático de la Fundación Alzheimer España
VIII Encuentro Temático de la Fundación Alzheimer EspañaVIII Encuentro Temático de la Fundación Alzheimer España
VIII Encuentro Temático de la Fundación Alzheimer EspañaFundacion Alzheimer España
 
Pine Cove Camp Store
Pine Cove Camp StorePine Cove Camp Store
Pine Cove Camp StorePBPrinting
 
Por medio de tu experiencia escribamos crónicas
Por medio de tu experiencia escribamos crónicasPor medio de tu experiencia escribamos crónicas
Por medio de tu experiencia escribamos crónicasjjohhanna
 
bhyve Device Emulation Introduction
bhyve Device Emulation Introductionbhyve Device Emulation Introduction
bhyve Device Emulation Introductionbsdvirt
 

Destacado (20)

Putty
PuttyPutty
Putty
 
Procesoadministrativo 110920133858-phpapp02 (4)
Procesoadministrativo 110920133858-phpapp02 (4)Procesoadministrativo 110920133858-phpapp02 (4)
Procesoadministrativo 110920133858-phpapp02 (4)
 
icredit-einvoicing
icredit-einvoicingicredit-einvoicing
icredit-einvoicing
 
Project of package sensorial , brayan , scarlet and kimberly
Project of package sensorial , brayan , scarlet and kimberlyProject of package sensorial , brayan , scarlet and kimberly
Project of package sensorial , brayan , scarlet and kimberly
 
Guia para la formulacion de proyectos de investigacion icfes
Guia para la formulacion de proyectos de investigacion icfesGuia para la formulacion de proyectos de investigacion icfes
Guia para la formulacion de proyectos de investigacion icfes
 
ProSoft Retail Offerings
ProSoft Retail OfferingsProSoft Retail Offerings
ProSoft Retail Offerings
 
HojadevidaMichaelCastillo
HojadevidaMichaelCastilloHojadevidaMichaelCastillo
HojadevidaMichaelCastillo
 
East Algarve Magazine - AUGUST 2010
East Algarve Magazine - AUGUST 2010East Algarve Magazine - AUGUST 2010
East Algarve Magazine - AUGUST 2010
 
Conviertete en Distribuidor BoxaLuv
Conviertete en Distribuidor BoxaLuvConviertete en Distribuidor BoxaLuv
Conviertete en Distribuidor BoxaLuv
 
VIII Encuentro Temático de la Fundación Alzheimer España
VIII Encuentro Temático de la Fundación Alzheimer EspañaVIII Encuentro Temático de la Fundación Alzheimer España
VIII Encuentro Temático de la Fundación Alzheimer España
 
Pine Cove Camp Store
Pine Cove Camp StorePine Cove Camp Store
Pine Cove Camp Store
 
Por medio de tu experiencia escribamos crónicas
Por medio de tu experiencia escribamos crónicasPor medio de tu experiencia escribamos crónicas
Por medio de tu experiencia escribamos crónicas
 
Blackboard in 15 Minuten: Blackboard Kommunikation
Blackboard in 15 Minuten: Blackboard KommunikationBlackboard in 15 Minuten: Blackboard Kommunikation
Blackboard in 15 Minuten: Blackboard Kommunikation
 
El plan de negocio
El plan de negocioEl plan de negocio
El plan de negocio
 
La composición
La composiciónLa composición
La composición
 
Brochure Big Maximus 2014
Brochure Big Maximus 2014Brochure Big Maximus 2014
Brochure Big Maximus 2014
 
bhyve Device Emulation Introduction
bhyve Device Emulation Introductionbhyve Device Emulation Introduction
bhyve Device Emulation Introduction
 
Rathasapthami
RathasapthamiRathasapthami
Rathasapthami
 
El romanticismo
El romanticismoEl romanticismo
El romanticismo
 
La estrategia web 2.0
La estrategia web 2.0La estrategia web 2.0
La estrategia web 2.0
 

Similar a Nguyễn Vũ Hưng: Basic Linux Power Tools

Linux introduction-commands2338
Linux introduction-commands2338Linux introduction-commands2338
Linux introduction-commands2338Cam YP Co., Ltd
 
Linux introduction-commands2338
Linux introduction-commands2338Linux introduction-commands2338
Linux introduction-commands2338Cam YP Co., Ltd
 
Shell_Scripting.ppt
Shell_Scripting.pptShell_Scripting.ppt
Shell_Scripting.pptKiranMantri
 
Module 3 Using Linux Softwares.
Module 3 Using Linux Softwares.Module 3 Using Linux Softwares.
Module 3 Using Linux Softwares.Tushar B Kute
 
Introduction to linux2
Introduction to linux2Introduction to linux2
Introduction to linux2Gourav Varma
 
linux-file-system01.ppt
linux-file-system01.pptlinux-file-system01.ppt
linux-file-system01.pptMeesanRaza
 
Linux administration training
Linux administration trainingLinux administration training
Linux administration trainingiman darabi
 
84640411 study-of-unix-os
84640411 study-of-unix-os84640411 study-of-unix-os
84640411 study-of-unix-oshomeworkping3
 
Programming Embedded linux
Programming Embedded linuxProgramming Embedded linux
Programming Embedded linuxLiran Ben Haim
 
Linux commands and file structure
Linux commands and file structureLinux commands and file structure
Linux commands and file structureSreenatha Reddy K R
 
Unix Basics
Unix BasicsUnix Basics
Unix BasicsDr.Ravi
 
Operating systems unix
Operating systems   unixOperating systems   unix
Operating systems unixAchu dhan
 

Similar a Nguyễn Vũ Hưng: Basic Linux Power Tools (20)

Linux introduction-commands2338
Linux introduction-commands2338Linux introduction-commands2338
Linux introduction-commands2338
 
Linux introduction-commands2338
Linux introduction-commands2338Linux introduction-commands2338
Linux introduction-commands2338
 
Shell_Scripting.ppt
Shell_Scripting.pptShell_Scripting.ppt
Shell_Scripting.ppt
 
beginner.en.print
beginner.en.printbeginner.en.print
beginner.en.print
 
beginner.en.print
beginner.en.printbeginner.en.print
beginner.en.print
 
beginner.en.print
beginner.en.printbeginner.en.print
beginner.en.print
 
Linux Basics
Linux BasicsLinux Basics
Linux Basics
 
Tutorial 2
Tutorial 2Tutorial 2
Tutorial 2
 
Module 3 Using Linux Softwares.
Module 3 Using Linux Softwares.Module 3 Using Linux Softwares.
Module 3 Using Linux Softwares.
 
Introduction to linux2
Introduction to linux2Introduction to linux2
Introduction to linux2
 
linux-file-system01.ppt
linux-file-system01.pptlinux-file-system01.ppt
linux-file-system01.ppt
 
Linux administration training
Linux administration trainingLinux administration training
Linux administration training
 
Shell intro
Shell introShell intro
Shell intro
 
Shell intro
Shell introShell intro
Shell intro
 
84640411 study-of-unix-os
84640411 study-of-unix-os84640411 study-of-unix-os
84640411 study-of-unix-os
 
Programming Embedded linux
Programming Embedded linuxProgramming Embedded linux
Programming Embedded linux
 
Shell intro
Shell introShell intro
Shell intro
 
Linux commands and file structure
Linux commands and file structureLinux commands and file structure
Linux commands and file structure
 
Unix Basics
Unix BasicsUnix Basics
Unix Basics
 
Operating systems unix
Operating systems   unixOperating systems   unix
Operating systems unix
 

Más de Vu Hung Nguyen

Co ban horenso - Tai lieu training noi bo
Co ban horenso - Tai lieu training noi boCo ban horenso - Tai lieu training noi bo
Co ban horenso - Tai lieu training noi boVu Hung Nguyen
 
Funix techtalk: Tự học hiệu quả thời 4.0
Funix techtalk: Tự học hiệu quả thời 4.0Funix techtalk: Tự học hiệu quả thời 4.0
Funix techtalk: Tự học hiệu quả thời 4.0Vu Hung Nguyen
 
Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]
Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]
Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]Vu Hung Nguyen
 
Japanese for it bridge engineers
Japanese for it bridge engineersJapanese for it bridge engineers
Japanese for it bridge engineersVu Hung Nguyen
 
Basic IT Project Management Terminologies
Basic IT Project Management TerminologiesBasic IT Project Management Terminologies
Basic IT Project Management TerminologiesVu Hung Nguyen
 
2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]
2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]
2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]Vu Hung Nguyen
 
Làm việc hiệu quả với sếp Nhật (2017)
Làm việc hiệu quả với sếp Nhật (2017)Làm việc hiệu quả với sếp Nhật (2017)
Làm việc hiệu quả với sếp Nhật (2017)Vu Hung Nguyen
 
Problem Solving Skills (for IT Engineers)
Problem Solving Skills (for IT Engineers)Problem Solving Skills (for IT Engineers)
Problem Solving Skills (for IT Engineers)Vu Hung Nguyen
 
Using Shader in cocos2d-x
Using Shader in cocos2d-xUsing Shader in cocos2d-x
Using Shader in cocos2d-xVu Hung Nguyen
 
Pham Anh Tu - TK Framework
Pham Anh Tu - TK FrameworkPham Anh Tu - TK Framework
Pham Anh Tu - TK FrameworkVu Hung Nguyen
 
My idol: Magnus Carlsen vs. Ky Anh 2G1 NGS Newton
My idol: Magnus Carlsen vs. Ky Anh 2G1 NGS NewtonMy idol: Magnus Carlsen vs. Ky Anh 2G1 NGS Newton
My idol: Magnus Carlsen vs. Ky Anh 2G1 NGS NewtonVu Hung Nguyen
 
Basic advanced scrum framework
Basic advanced scrum frameworkBasic advanced scrum framework
Basic advanced scrum frameworkVu Hung Nguyen
 
FPT Univ. Talkshow IT khong chi la lap trinh
FPT Univ. Talkshow IT khong chi la lap trinhFPT Univ. Talkshow IT khong chi la lap trinh
FPT Univ. Talkshow IT khong chi la lap trinhVu Hung Nguyen
 
Basic & Advanced Scrum Framework
Basic & Advanced Scrum FrameworkBasic & Advanced Scrum Framework
Basic & Advanced Scrum FrameworkVu Hung Nguyen
 
Agile Vietnam Conference 2016: Recap
Agile Vietnam Conference 2016: RecapAgile Vietnam Conference 2016: Recap
Agile Vietnam Conference 2016: RecapVu Hung Nguyen
 
IT Public Speaking Guidelines
IT Public Speaking GuidelinesIT Public Speaking Guidelines
IT Public Speaking GuidelinesVu Hung Nguyen
 
Kanban: Cơ bản và Nâng cao
Kanban: Cơ bản và Nâng caoKanban: Cơ bản và Nâng cao
Kanban: Cơ bản và Nâng caoVu Hung Nguyen
 
Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)
Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)
Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)Vu Hung Nguyen
 
Fuji Technology Workshop: Learning Skills
Fuji Technology Workshop: Learning SkillsFuji Technology Workshop: Learning Skills
Fuji Technology Workshop: Learning SkillsVu Hung Nguyen
 
Anti patterns in it project management
Anti patterns in it project managementAnti patterns in it project management
Anti patterns in it project managementVu Hung Nguyen
 

Más de Vu Hung Nguyen (20)

Co ban horenso - Tai lieu training noi bo
Co ban horenso - Tai lieu training noi boCo ban horenso - Tai lieu training noi bo
Co ban horenso - Tai lieu training noi bo
 
Funix techtalk: Tự học hiệu quả thời 4.0
Funix techtalk: Tự học hiệu quả thời 4.0Funix techtalk: Tự học hiệu quả thời 4.0
Funix techtalk: Tự học hiệu quả thời 4.0
 
Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]
Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]
Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]
 
Japanese for it bridge engineers
Japanese for it bridge engineersJapanese for it bridge engineers
Japanese for it bridge engineers
 
Basic IT Project Management Terminologies
Basic IT Project Management TerminologiesBasic IT Project Management Terminologies
Basic IT Project Management Terminologies
 
2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]
2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]
2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]
 
Làm việc hiệu quả với sếp Nhật (2017)
Làm việc hiệu quả với sếp Nhật (2017)Làm việc hiệu quả với sếp Nhật (2017)
Làm việc hiệu quả với sếp Nhật (2017)
 
Problem Solving Skills (for IT Engineers)
Problem Solving Skills (for IT Engineers)Problem Solving Skills (for IT Engineers)
Problem Solving Skills (for IT Engineers)
 
Using Shader in cocos2d-x
Using Shader in cocos2d-xUsing Shader in cocos2d-x
Using Shader in cocos2d-x
 
Pham Anh Tu - TK Framework
Pham Anh Tu - TK FrameworkPham Anh Tu - TK Framework
Pham Anh Tu - TK Framework
 
My idol: Magnus Carlsen vs. Ky Anh 2G1 NGS Newton
My idol: Magnus Carlsen vs. Ky Anh 2G1 NGS NewtonMy idol: Magnus Carlsen vs. Ky Anh 2G1 NGS Newton
My idol: Magnus Carlsen vs. Ky Anh 2G1 NGS Newton
 
Basic advanced scrum framework
Basic advanced scrum frameworkBasic advanced scrum framework
Basic advanced scrum framework
 
FPT Univ. Talkshow IT khong chi la lap trinh
FPT Univ. Talkshow IT khong chi la lap trinhFPT Univ. Talkshow IT khong chi la lap trinh
FPT Univ. Talkshow IT khong chi la lap trinh
 
Basic & Advanced Scrum Framework
Basic & Advanced Scrum FrameworkBasic & Advanced Scrum Framework
Basic & Advanced Scrum Framework
 
Agile Vietnam Conference 2016: Recap
Agile Vietnam Conference 2016: RecapAgile Vietnam Conference 2016: Recap
Agile Vietnam Conference 2016: Recap
 
IT Public Speaking Guidelines
IT Public Speaking GuidelinesIT Public Speaking Guidelines
IT Public Speaking Guidelines
 
Kanban: Cơ bản và Nâng cao
Kanban: Cơ bản và Nâng caoKanban: Cơ bản và Nâng cao
Kanban: Cơ bản và Nâng cao
 
Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)
Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)
Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)
 
Fuji Technology Workshop: Learning Skills
Fuji Technology Workshop: Learning SkillsFuji Technology Workshop: Learning Skills
Fuji Technology Workshop: Learning Skills
 
Anti patterns in it project management
Anti patterns in it project managementAnti patterns in it project management
Anti patterns in it project management
 

Último

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 

Último (20)

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 

Nguyễn Vũ Hưng: Basic Linux Power Tools

  • 1. The Unix and GNU/Linux Command Line Nguyen Vu Hung – VINICORP [email_address] 2010/09/21 Based on “intro_unix_linux” by Michael Opdenacker from Free Electrons
  • 2.
  • 3. Find pages quickly thanks to automatic search
  • 4. Use thumbnails to navigate in the document in a quick way
  • 5. Command memento sheet It is a useful companion to this presentation. Examples for the most useful commands are given in just one sheet. Suggestions for use Stick this sheet on your wall, use it as desktop wallpaper, make it a mouse mat, print it on clothing, slice it into bookmarks... Caution Store away from mice!
  • 6.
  • 7. GNU / Linux filesystem structure
  • 9. Handling files and directories
  • 10. Displaying, scanning and sorting files
  • 13.
  • 14. Pipes: redirecting standard output to other commands
  • 16.
  • 17. Executing in background, suspending, resuming and aborting
  • 18. List of active tasks
  • 23.
  • 26. Comparing files and directories
  • 29.
  • 31.
  • 32. Searching the Internet for resources
  • 33.
  • 35. MySQL
  • 36.
  • 37. LAMP on CentOS (Redhat)
  • 38.
  • 39.
  • 40. Why Software Should Not Have Owners
  • 44. The Unix and GNU/Linux command line Unix Filesystem
  • 45.
  • 46. Directories Directories are just files listing a set of files
  • 47.
  • 48. Pipes Used to cascade programs cat *.log | grep error
  • 49. Sockets Inter process communication Almost everything in Unix is a file!
  • 50.
  • 52. Can contain any character (including whitespace, except / ). File types stored in the file (“magic numbers”). File name extensions not needed and not interpreted. Just used for user convenience.
  • 53. File name examples: README .bashrc Windows Buglist index.htm index.html index.html.old
  • 54.
  • 55. Absolute path: /home/bill/bugs/crash9402031614568
  • 56. / : root directory . Start of absolute paths for all files on the system (even for files on removable devices or network shared).
  • 57. GNU/Linux filesystem structure (1) Not imposed by the system. Can vary from one system to the other, even between two GNU/Linux installations! / Root directory /bin/ Basic, essential system commands /boot/ Kernel images, initrd and configuration files /dev/ Files representing devices /dev/hda : first IDE hard disk /etc/ System configuration files /home/ User directories /lib/ Basic system shared libraries
  • 58. GNU/Linux filesystem structure (2) /lost+found Corrupt files the system tried to recover /media Mount points for removable media: /media/usbdisk , /media/cdrom /mnt/ Mount points for temporarily mounted filesystems /opt/ Specific tools installed by the sysadmin /usr/local/ often used instead /proc/ Access to system information /proc/cpuinfo , / proc/version ... /root/ root user home directory /sbin/ Administrator-only commands /sys/ System and device controls (cpu frequency, device power, etc.)
  • 59. GNU/Linux filesystem structure (3) /tmp/ Temporary files /usr/ Regular user tools (not essential to the system) /usr/bin/ , /usr/lib/ , /usr/sbin ... /usr/local/ Specific software installed by the sysadmin (often preferred to /opt/ ) /var/ Data used by the system or system servers /var/log/ , /var/spool/mail (incoming mail), /var/spool/lpd (print jobs)... The Unix filesystem structure is defined by the Filesystem Hierarchy Standard (FHS): http://www.pathname.com/fhs/
  • 60. The Unix and GNU/Linux command line Shells and File Handling
  • 61.
  • 62. Called “shells” because they hide the details on the underlying operating system under the shell's surface.
  • 63. Commands are input in a text terminal, either a window in a graphical environment or a text-only console.
  • 64. Results are also displayed on the terminal. No graphics are needed at all.
  • 65. Shells can be scripted: provide all the resources to write complex programs (variable, conditionals, iterations...)
  • 66.
  • 67. csh : The C shell (obsolete) Once popular shell with a C-like syntax
  • 68. tcsh : The TC shell (still very popular) A C shell compatible implementation with evolved features (command completion, history editing and more...)
  • 69. bash : The Bourne Again shell (most popular) An improved implementation of sh with lots of added features too.
  • 70.
  • 71. Brand new features: command option completion, command completion with short description, syntax highlighting..
  • 72. Easier to any open files: open built-in command.
  • 73. Much simpler and consistent syntax (not POSIX compliant) Makes it easier to create shell scripts. Command line beginners can learn much faster! Even experienced users should find this shell very convenient.
  • 74.
  • 75. ls -l (long) Long listing (type, date, size, owner, permissions)
  • 76.
  • 77. ls -r (reverse) Reverses the sort order
  • 78. ls -ltr (options can be combined) Long listing, most recent files at the end Lists the files in the current directory, in alphanumeric order, except files starting with the “ . ” character.
  • 79.
  • 80. ls -d .* Lists all the files and directories starting with . -d tells ls not to display the contents of directories.
  • 81. cat ?.log Displays all the files which names start by 1 character and end by .log
  • 82.
  • 83.
  • 85.
  • 86.
  • 87.
  • 88. cd - Gets back to the previous current directory.
  • 89. pwd Displays the current directory (&quot;working directory&quot;).
  • 90.
  • 91. cp file1 file2 file3 ... dir Copies the files to the target directory (last argument).
  • 92. cp -i (interactive) Asks for user confirmation if the target file already exists
  • 93. cp -r <source_dir> <target_dir> (recursive) Copies the whole directory.
  • 94.
  • 95. Only transfers the blocks that differ within a file!
  • 96. Can compress the transferred blocks
  • 97. Preserves symbolic links and file permissions: also very useful for copies on the same machine.
  • 98. Can work through ssh (secure remote shell). Very useful to update the contents of a website, for example.
  • 99.
  • 100.
  • 101.
  • 102. mv -i (interactive) If the new file already exits, asks for user confirm
  • 103. rm file1 file2 file3 ... (remove) Removes the given files.
  • 104. rm -i (interactive) Always ask for user confirm.
  • 105. rm -r dir1 dir2 dir3 (recursive) Removes the given directories with all their contents.
  • 106.
  • 107. rmdir dir1 dir2 dir3 ... (remove dir) Removes the given directories Safe: only works when directories and empty. Alternative: rm -r (doesn't need empty directories).
  • 108.
  • 109. more file1 file2 file3 ... After each page, asks the user to hit a key to continue. Can also jump to the first occurrence of a keyword ( / command).
  • 110. less file1 file2 file3 ... Does more than more with less. Doesn't read the whole file before starting. Supports backward movement in the file ( ? command).
  • 111.
  • 112. tail [-<n>] <file> Displays the last <n> lines (or 10 by default) of the given file. No need to load the whole file in RAM! Very useful for huge files.
  • 113. tail -f <file> (follow) Displays the last 10 lines of the given file and continues to display new lines when they are appended to the file. Very useful to follow the changes in a log file, for example.
  • 114. Examples head windows_bugs.txt tail -f outlook_vulnerabilities.txt
  • 115.
  • 116. grep error *.log Displays all the lines containing error in the *. log files
  • 117. grep -i error *.log Same, but case insensitive
  • 118. grep -ri error . Same, but recursively in all the files in . and its subdirectories
  • 119. grep -v info *.log Outputs all the lines in the files except those containing info .
  • 120.
  • 121. sort -r <file> Same, but in reverse order.
  • 122. sort -ru <file> u : unique. Same, but just outputs identical lines once.
  • 124.
  • 125. Example: anakin_skywalker_biography -> darth_vador_biography
  • 126.
  • 127. GNU ls displays links with a different color.
  • 128.
  • 129. To create a link with to a file in another directory, with the same name: ln -s ../README.txt
  • 130. To create multiple links at once in a given directory: ln -s file1 file2 file3 ... dir
  • 131. To remove a link: rm link_name Of course, this doesn't remove the linked file!
  • 132.
  • 133. A hard link to a file is a regular file with exactly the same physical contents
  • 134. While they still save space, hard links can't be distinguished from the original files.
  • 135. If you remove the original file, there is no impact on the hard link contents.
  • 136. The contents are removed when there are no more files (hard links) to them.
  • 137. Files names and inodes Makes hard and symbolic (soft) links easier to understand!
  • 138.
  • 140.
  • 141. Group ( g ): each file also has a “group” attribute, corresponding to a given list of users
  • 142. Others ( o ): for all other users Use ls -l to check file access rights
  • 143.
  • 144. Both r and x permissions needed for directories: x to enter, r to list its contents.
  • 145. You can't rename, remove, copy files in a directory if you don't have w access to this directory.
  • 146. If you have w access to a directory, you CAN remove a file even if you don't have write access to this file (remember that a directory is just a file describing a list of files). This even lets you modify (remove + recreate) a file even without w access to it.
  • 147.
  • 148. -rw-r----- Readable and writable for file owner, only readable for users belonging to the file group.
  • 149. drwx------ Directory only accessible by its owner
  • 150. -------r-x File executable by others but neither by your friends nor by yourself. Nice protections for a trap...
  • 151.
  • 152. Octal format (abc): a,b,c = r*4+w*2+x ( r , w , x : booleans) Example: chmod 644 <file> ( rw for u , r for g and o )
  • 153. Or symbolic format. Easy to understand by examples: chmod go+r : add read permissions to group and others. chmod u-w : remove write permissions from user. chmod a-x : ( a : all) remove execute permission from all.
  • 154.
  • 155. X : x , but only for directories and files already executable Very useful to open recursive access to directories, without adding execution rights to all files.
  • 156.
  • 157. Useful for directories with write access to anyone, like /tmp .
  • 158. Displayed by ls -l with a t character.
  • 159. The Unix and GNU / Linux command line Standard I/O, Redirections, Pipes
  • 160.
  • 161. Standard output can be written (redirected) to a file using the > symbol
  • 162. Standard output can be appended to an existing file using the >> symbol
  • 163.
  • 164. cat america.txt > the_earth.txt cat america.txt >> the_world.txt
  • 165. echo “README: No such file or directory” > README Useful way of creating a file without a text editor. Nice Unix joke too in this case.
  • 166.
  • 167. sort windows linux [Ctrl][D] linux windows
  • 168. sort < participants.txt The standard input of sort is taken from the given file. sort takes its input from the standard input: in this case, what you type in the terminal (ended by [Ctrl][D] )
  • 169.
  • 170.
  • 171. grep -ri error . | grep -v “ignored” | sort -u > serious_errors.log
  • 172.
  • 173.
  • 174. make | tee build.log Runs the make command and stores its output to build.log .
  • 175. make install | tee -a build.log Runs the make install command and appends its output to build.log .
  • 176.
  • 177. Standard error can be redirected through 2> or 2>>
  • 178. Example: cat f1 f2 nofile > newfile 2> error_file
  • 179. Note: 1 is the descriptor for standard output, so 1> is equivalent to > .
  • 180. Can redirect both standard output and standard error to the same file using &> : cat f1 f2 nofile &> whole_file
  • 181.
  • 182. Examples yes | rm -r dir/ bank> yes no | credit_applicant yes &quot;&quot; | make oldconfig (equivalent to hitting [Enter] to accept all default settings)
  • 183.
  • 184. /dev/zero Reads from this file always return characters Useful to create a file filled with zeros: dd if=/dev/zero of=disk.img bs=1k count=2048 See man null or man zero for details
  • 185.
  • 186. /dev/urandom For programs for which pseudo random numbers are fine. Always generates random bytes, even if not enough entropy is available (in which case it is possible, though still difficult, to predict future byte sequences from past ones). See man random for details.
  • 187.
  • 188. The Unix and GNU / Linux command line Task Control
  • 189.
  • 190. Ability to run many tasks in parallel, and abort them even if they corrupt their own state and data.
  • 191. Ability to choose which programs you run.
  • 192. Ability to choose which input your programs takes, and where their output goes.
  • 193.
  • 194.
  • 195.
  • 196.
  • 197.
  • 198. Moving the current task in background mode: [Ctrl] Z bg
  • 199. kill %<n> Aborts the nth job.
  • 200. Job control example > jobs [1]- Running ~/bin/find_meaning_of_life --without-god & [2]+ Running make mistakes & > fg make mistakes > [Ctrl] Z [2]+ Stopped make mistakes > bg [2]+ make mistakes & > kill %1 [1]+ Terminated ~/bin/find_meaning_of_life --without-god
  • 201.
  • 202. ps -aux (Note: ps -edf on System V systems) Lists all the processes running on the system
  • 203. ps -aux | grep bart | grep bash USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND bart 3039 0.0 0.2 5916 1380 pts/2 S 14:35 0:00 /bin/bash bart 3134 0.0 0.2 5388 1380 pts/3 S 14:36 0:00 /bin/bash bart 3190 0.0 0.2 6368 1360 pts/4 S 14:37 0:00 /bin/bash bart 3416 0.0 0.0 0 0 pts/2 RW 15:07 0:00 [bash]
  • 204. PID: Process id VSZ: Virtual process size (code + data + stack) RSS: Process resident size: number of KB currently in RAM TTY: Terminal STAT: Status: R (Runnable), S (Sleep), W (paging), Z (Zombie)...
  • 205.
  • 206. You can kill a task by typing k and the process id.
  • 207.
  • 208. You can kill a task by typing k and the process id.
  • 209.
  • 210. kill -9 <pids> Sends an immediate termination signal. The system itself terminates the processes. Useful when a process is really stuck (doesn't answer to kill -1 ).
  • 211. kill -9 -1 Kills all the processes of the current user. -1 : means all processes.
  • 212.
  • 213. xkill Lets you kill a graphical application by clicking on it! Very quick! Convenient when you don't know the application command name.
  • 214.
  • 215. It is very likely that your system is still fine. Try to access a text console by pressing the [Ctrl][Alt][F1] keys (or [F2] , [F3] for more text consoles)
  • 216. In the text console, you can try to kill the guilty application.
  • 217. Once this is done, you can go back to the graphic session by pressing [Ctrl][Alt][F5] or [Ctrl][Alt][F7] (depending on your distribution)
  • 218. If you can't identify the stuck program, you can also kill all your processes: kill -9 -1 You are then brought back to the login screen.
  • 219.
  • 220. Can separate commands with the ; symbol: echo “I love thee”; sleep 10; echo “ not”
  • 221. Conditionals: use || (or) or && (and): more God || echo “Sorry, God doesn't exist” Runs echo only if the first command fails ls ~sd6 && cat ~sd6/* > ~sydney/recipes.txt Only cats the directory contents if the ls command succeeds (means read access).
  • 222. Quoting (1) Double ( &quot; ) quotes can be used to prevent the shell from interpreting spaces as argument separators, as well as to prevent file name pattern expansion. > echo &quot;Hello World&quot; Hello World > echo &quot;You are logged as $USER&quot; You are logged as bgates > echo *.log find_prince_charming.log cosmetic_buys.log > echo &quot;*.log&quot; *.log
  • 223. Quoting (2) Single quotes bring a similar functionality, but what is between quotes is never substituted > echo 'You are logged as $USER' You are logged as $USER Back quotes ( ` ) can be used to call a command within another > cd /lib/modules/`uname -r`; pwd /lib/modules/2.6.9-1.6_FC2 Back quotes can be used within double quotes > echo &quot;You are using Linux `uname -r`&quot; You are using Linux 2.6.9-1.6_FC2
  • 224.
  • 225.
  • 226. You can also define environment variables : variables that are also visible within scripts or executables called from the shell. Convention: upper case names.
  • 227. env (set) Lists all defined environment variables and their value.
  • 228.
  • 229. export DEBUG=1 ./find_extraterrestrial_life (displays debug information if DEBUG is set)
  • 230.
  • 231. DISPLAY Screen id to display X (graphical) applications on.
  • 232. EDITOR Default editor (vi, emacs...)
  • 233. HOME Current user home directory
  • 234.
  • 239. USER Current user name Extremely widely used!
  • 240.
  • 241.
  • 242. If you have an executable file called test in a directory, this will override the default test program and some scripts will stop working properly.
  • 243. Each time you cd to a new directory, the shell will waste time updating its list of available commands. Call your local commands as follows: ./test
  • 244.
  • 245. alias rm='rm -i' Useful to make rm always ask for confirmation.
  • 246. alias frd='find_rambaldi_device --asap --risky' Useful to replace very long and frequent commands.
  • 247. alias cia='. /home/vuhung/env/cia.sh' Useful to set an environment in a quick way ( . is a shell command to execute the content of a shell script).
  • 248.
  • 249. tcsh> which ls ls: aliased to ls --color=tty
  • 250. bash> which alias /usr/bin/which: no alias in (/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin)
  • 251. tcsh> which alias alias: shell built-in command.
  • 252.
  • 253.
  • 255. Your prompt (see the bash manual for details).
  • 257.
  • 258. You can use [Ctrl][a] to go to the beginning of the line, and [Ctrl][e] to go to the end.
  • 259. You can use the up and down arrows to select earlier commands.
  • 260.
  • 261. You can recall the latest command: !!
  • 262. You can recall a command by its number !1003
  • 263. You can recall the latest command matching a starting string: !cat
  • 264. Ctrl-R
  • 266.
  • 267. You can run another command with the same arguments: more !*
  • 268. The Unix and GNU / Linux command line Miscellaneous Text Editors
  • 269.
  • 270.
  • 271. nano
  • 272.
  • 273. Syntax highlighting for most languages and formats. Can be tailored for your own log files, to highlight particular errors and warnings.
  • 274.
  • 276.
  • 277. Extremely powerful text editor features
  • 278.
  • 280.
  • 281.
  • 282. Often can't be replaced to edit files in system administration or in Embedded Systems, when you just have a text console.
  • 283.
  • 284. Implements lots of features available in modern editors: syntax highlighting, command history, help, unlimited undo and much much more.
  • 285. Cool feature example: can directly open compressed text files.
  • 286. Comes with a GTK graphical interface ( gvim )
  • 287. Unfortunately, not free software (because of a small restriction in freedom to make changes)
  • 288. vi basic commands Though vi is extremely powerful, its main 30 commands are easy to learn and are sufficient for 99% of everyone's needs! You can also take the quick tutorial by running vimtutor .
  • 289.
  • 290. An enhanced Pico clone (non free editor in Pine )
  • 291. Friendly and easier to learn for beginners thanks to on screen command summaries.
  • 292. Available in binary packages for several platforms.
  • 293. An alternative to vi in embedded systems. However, not available as a busybox built-in.
  • 295. The Unix and GNU/Linux command line Miscellaneous Compressing and Archiving
  • 296.
  • 297. du -sh <dir> -s : returns the s um of disk usage of all the files in the given directory.
  • 298.
  • 299. Example: > df -h . Filesystem Size Used Avail Use% Mounted on /dev/hda5 9.2G 7.1G 1.8G 81% /
  • 300. df -h Returns disk space information for all filesystems available in the system. When errors happen, useful to look for full filesystems.
  • 301.
  • 302. b[un]zip2 <file> More recent and effective compression utility. Creates .bz2 files. Usually 20-25% better than gzip .
  • 303. Using 7-zip Much better compression ratio than bzip2 (up to 10 to 20%). See the 7-zip page for details.
  • 304.
  • 305. Creating an archive: tar cvf <archive> <files or directories> c : create v : verbose. Useful to follow archiving progress. f : file. Archive created in file (tape used otherwise).
  • 306. Example: tar cvf /backup/home.tar /home bzip2 /backup/home.tar
  • 307.
  • 308. Extracting all the files from an archive: tar xvf <archive>
  • 309. Extracting just a few files from an archive: tar xvf <archive> <files or directories> Files or directories are given with paths relative to the archive root directory.
  • 310.
  • 311. z option: [un]compresses on the fly with gzip
  • 312.
  • 314. tar xvzf work.tar.bz2; tar xvjf work.tar.gz
  • 315.
  • 316. 7-zip compresses much better than bzip2 (up to 10 or 20%) and of course zip (30 to 50 %). Benchmark compressing Knoppix 5.0.1 : -22% (vs. bzip2)!
  • 317. Caution: 7-zip cannot replace tar for archiving on Unix. It doesn't keep file owner and group information, but of course keeps file permissions. Use it to compress tar archives!
  • 319.
  • 320. At last a solution available for Unix and Windows ! The tool supports most other compression formats: zip , cab , arj , gzip , bzip2 , tar , cpio , rpm and deb .
  • 321.
  • 322. List files in archive: ( l : list) 7z l <archive>
  • 323. Extracting from a 7-zip archive: ( e : extract) 7z x <archive>
  • 324. Backup a directory (keeping owner and group information): tar cf - <dir> | 7z a -si dir.tar.7z
  • 325. Restore this backup: 7z x -so dir.tar.7z | tar xf - s tandard i nput s tandard o utput
  • 326.
  • 327. Example output: db8c7254beeb4f6b891d1ed3f689b412 FC3-i386-disc1.iso 2c11674cf429fe570445afd9d5ff564e FC3-i386-disc2.iso f88f6ab5947ca41f3cf31db04487279b FC3-i386-disc3.iso 6331c00aa3e8c088cc365eeb7ef230ea FC3-i386-disc4.iso
  • 328. md5sum -c MD5SUM Checks the integrity of the files in MD5SUM by comparing their actual MD5 checksum with their original one.
  • 329. The Unix and GNU / Linux command line Miscellaneous Printing
  • 330.
  • 331. Printer independent system: Print servers only accept jobs in PostScript or text. Printer drivers on the server take care of the conversion to each printers own format.
  • 332. Robust system: Reboot a system, it will continue to print pending jobs.
  • 333.
  • 334. lpr [-P<queue>] <files> Sends the given files to the specified printing queue The files must be in text or PostScript format. Otherwise, you only print garbage.
  • 335. a2ps [-P<queue>] <files> “Any to PostScript” converts many formats to PostScript and send the output to the specified queue. Useful features: several pages / sheet, page numbering, info frame...
  • 336.
  • 337. cancel <job#> [<queue>] Removes the given job number from the default queue.
  • 338.
  • 339.
  • 340. Better convert to PostScript with pdf2ps : pdf2ps rambaldi_artifacts_for_dummies.pdf lpr rambaldi_artifacts_for_dummies.ps
  • 341. The Unix and GNU / Linux command line Miscellaneous Comparing Files and Directories
  • 342.
  • 343. diff -r dir1/ dir2/ Reports all the differences between files with the same name in the 2 directories.
  • 344. To investigate differences in detail, better use graphical tools!
  • 345.
  • 346. tkdiff http://tkdiff.sourceforge.net/ Useful tool to compare files and merge differences
  • 347. kompare Another nice tool to compare files and merge differences Part of the kdesdk package (Fedora Core)
  • 348. gvimdiff Another nice tool to view differences in files Available in most distributions with gvim Apparently not using diff . No issue with files with binary sections!
  • 349. The Unix and GNU / Linux command line Miscellaneous Looking for Files
  • 350.
  • 351. find docs -name &quot;*.pdf&quot; -exec xpdf {} ';' Finds all the *.pdf files in the docs directory and displays one after the other.
  • 352. Many more possibilities available! However, the above 2 examples cover most needs.
  • 353.
  • 354. locate “*.pdf” Lists all the *.pdf files available on the whole machine
  • 355. locate “/home/fridge/*beer*” Lists all the *beer* files in the given directory (absolute path)
  • 356. locate is much faster because it indexes all files in a dedicated database, which is updated on a regular basis.
  • 358. find is better to search through recently created files.
  • 359. The Unix and GNU / Linux command line Miscellaneous Various Commands
  • 360.
  • 361. whoami Tells what user I am logged as.
  • 362. groups Tells which groups I belong to.
  • 363. groups <user> Tells which groups <user> belongs to.
  • 364. finger <user> Tells more details (real name, etc) about <user> Disabled in some systems (security reasons).
  • 365.
  • 366. su - jekyll (More frequent) Log on the jekyll account, with exactly the same settings as this new user.
  • 367. su - When no argument is given, it means the root user.
  • 368.
  • 370. Can download entire sites or at least check for bad links
  • 371. Very useful in scripts or when no graphics are available (system administration, embedded systems)
  • 372. Proxy support ( http_proxy and ftp_proxy env. (set) variables)
  • 373.
  • 374. wget -m http://lwn.net/ Mirrors a site.
  • 375. wget -r -np http://www.xml.com/ldd/chapter/book/ Recursively downloads an on-line book for off-line access. -np : &quot;no-parent&quot;. Only follows links in the current directory.
  • 376.
  • 377. wc report.txt (word count) 438 2115 18302 report.txt Counts the number of lines, words and characters in a file or in standard input.
  • 378.
  • 379. The Unix and GNU/Linux command line System Administration Basics
  • 380.
  • 381. chgrp -R core /home/vuhung Makes core the new group of everything in /home/vuhung .
  • 382. chown -R vuhung:core /FileServer/Backup/ chown can be used to change the owner and group at the same time.
  • 383.
  • 385. shutdown -r now ( -r : reboot)
  • 386. init 0 Another way to shutdown ( init is used internally by shutdown ).
  • 387. init 6 Another way to reboot.
  • 388. [Ctrl][Alt][Del] Also works on GNU/Linux (at least on PCs!).
  • 389.
  • 390. ifconfig eth0 Lists details about the eth0 interface
  • 391. ifconfig eth0 192.168.52.100 Assigns the 192.168.52.100 IP address to eth0 (1 IP address per interface).
  • 392. ifconfig eth0 down Shuts down the eth0 interface (frees its IP address).
  • 393.
  • 394. route Lists the existing routes
  • 395. route del default route del <IP> Deletes the given route Useful to redefine a new route.
  • 396.
  • 397. ping 192.168.52.16 (internal) ping 192.168.51.1 (semi-internal) Tries to send packets to the given machine and get acknowledgment packets in return. PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data. 64 bytes from 192.168.51.1: icmp_seq=0 ttl=150 time=2.51 ms 64 bytes from 192.168.51.1: icmp_seq=1 ttl=150 time=3.16 ms 64 bytes from 192.168.51.1: icmp_seq=2 ttl=150 time=2.71 ms 64 bytes from 192.168.51.1: icmp_seq=3 ttl=150 time=2.67 ms
  • 398. When you can ping your gateway, your network interface works fine.
  • 399. When you can ping an external IP address, your network settings are correct!
  • 400.
  • 401. Identify your network interface: ifconfig -a
  • 402. Assign an IP address to your interface (assuming eth0 ) ifconfig eth0 192.168.52.100 (example)
  • 403. Add a route to your gateway (assuming 192.168.52.3 ) for packets outside the network: route add default gw 192.168.52.3
  • 404.
  • 405. Domain Name Servers (DNS) take care of this.
  • 406. You just have to specify the IP address of 1 or more DNS servers in your /etc/resolv.conf file: nameserver 192.168.52.3 (Internal DNS server) nameserver 8.8.8.8 (Google Open DNS)
  • 409. The changes takes effect immediately!
  • 410.
  • 411. mkfs.ext2 -F disk.img Formats a disk image file in ext2 format
  • 412. mkfs.vfat -v -F 32 /dev/sda1 ( -v : verbose) Formats your USB key back to FAT32 format.
  • 413. mkfs.vfat -v -F 32 disk.img Formats a disk image file in FAT32 format. Blank disk images can be created as in the below example: dd if=/dev/zero of=disk.img bs=1024 count=65536
  • 414.
  • 415. The first time, create a mount point in your system: mkdir /mnt/usbdisk (example)
  • 416. Now, mount it: mount -t vfat /dev/sda1 /mnt/usbdisk /dev/sda1 : physical device -t : sp ecifies the filesystem (format) type ( ext2 , ext3 , vfat , reiserfs , iso9660 ...) mount file structure raw data (file descriptors and file contents)
  • 417.
  • 418.
  • 419.
  • 420. Useful to access the contents of an ISO cdrom image without having to burn it.
  • 421. Useful to create a Linux partition on a hard disk with only Windows partitions cp /dev/sda1 usbkey.img mount -o loop -t vfat usbkey.img /mnt/usbdisk
  • 422.
  • 423.
  • 424.
  • 425. Make sure that none of your shells have a working directory in this mount point.
  • 426. You can run the lsof command ( l i s t o pen f iles) to view which processes still have open files in the mounted partition.
  • 427.
  • 428. Even if you have the root password, your regular account should be sufficient for 99.9 % of your tasks (unless you are a system administrator).
  • 429. In a training session, it is acceptable to use root . In real life, you may not even have access to this account, or put your systems and data at risk if you do.
  • 430.
  • 431. In modern distributions, the sudo command gives you access to some root privileges with your own user password. Example: sudo mount /dev/hda4 /home
  • 432. Distributions like Debian or Ubuntu by default don't allow the root user to use graphical applications (more complex and thus more vulnerable).
  • 433. If you really want to start a graphical application with root , type: As root : export DISPLAY=:0 (i.e. use the first display) As your regular user: xhost + (i.e. allow other users)
  • 434. The Unix and GNU/Linux command line GNU/Linux: Distribution Packages
  • 435.
  • 436. rpmfind : http://rpmfind.net/ Lots of RPM packages for Red Hat , Mandriva , Suse ...
  • 437.
  • 438.
  • 439.
  • 440.
  • 441.
  • 442. The Unix and GNU/Linux command line Going Further
  • 443.
  • 444. --help ( -- is always used to introduce the corresponding “long” option name, which makes scripts easier to understand) You also often get a short summary of options when you input an invalid argument.
  • 445.
  • 446. man fstab (for /etc/fstab ) Manual page files are looked for in the directories specified by the MANPATH environment variable.
  • 447.
  • 448. Possibility to navigate in this structure: top, next, prev, up
  • 449. Info pages generated from the same texinfo source as the HTML documentation pages
  • 450.
  • 451. If you investigate an error message, copy it verbatim in the search form, enclosed in double quotes (“error message”). Lots of chances that somebody else already faced the same issue.
  • 452. Don't forget to use Google Groups: http://groups.google.com/ This site indexes more than 20 years of newsgroups messages.
  • 453.
  • 454.
  • 455.
  • 457. HueLug
  • 460.
  • 461. Embedded Linux kernel and driver development
  • 462. Free Software tools for embedded Linux systems
  • 463. Audio in embedded Linux systems
  • 464.
  • 466.
  • 467. Real-time in embedded Linux systems
  • 469. Linux on TI OMAP processors
  • 471. Java in embedded Linux systems
  • 472. Introduction to GNU/Linux and Free Software
  • 474. What's new in Linux 2.6?
  • 475. How to port Linux on a new PDA More than 1500 pages under free licenses.
  • 476.
  • 477.
  • 480. Addition packages: php-common php-gd php-mcrypt php-pear php-pecl-memcache php-mhash php-mysql php-xml
  • 481.
  • 483. Any books on LAMP
  • 484. Q&A
  • 485.
  • 487.
  • 488. Any of these conditions can be waived if you get permission from the copyright holder. Your fair use and other rights are in no way affected by the above. License text: http://creativecommons.org/licenses/by-sa/2.5/legalcode
  • 489. Copyright © Copyright 2004-2007 Free Electrons [email_address] Document sources, updates and translations: http://free-electrons.com/training/intro_unix_linux Corrections, suggestions, contributions and translations are welcome!

Notas del editor

  1. No longer mentioned here [un]compress &lt;file&gt; Traditional Unix compression utility. Creates .Z files. Obsolete. Only kept for compatibility. Poor performance.