2. Section Overview
X Windows
Consoles and Terminals
UNIX Commands
UNIX Filesystem
vi Editor
3. X Windows
Familiar GUI interface
Virtual screens
Remote applications
X-Terminal Windows
Multiple concurrent session
Scroll bars
Cut, Copy & Paste
4. X Managers &
Environments
X Window Managers
Very configurable
A lot of variety
GUI login mode
X Window Environment
Fully integrated environment
Window manager runs within the
environment
5. Why use the command
line?
Always available
GUI not installed/working
Remote sessions
More efficient
More powerful
Better understanding of what is
happening
6. UNIX Terminals
Old Days
Hardwired – serial connections
Modems – remote connections
Network – telnet
Console
Monitor/keyboard/mouse on system
Boot/error messages display
Headless servers
7. Virtual Consoles in Linux
Multiple sessions on one console
Special Consoles
Console 1 – default console
Console 7 – X Windows
Toggling between consoles
Text mode - <Alt><Fn>
X Windows - <Ctrl><Alt><Fn>
<Fn>: Function Key (n = 1 .. 7)
8. Basic Philosophy
10% of work solves 90% of
problems
Smaller is better
Portability
Solve at right level
Be Creative!!!
9. Command Anatomy 101
command [-switches] [arg1] [arg2]…
Command: Name of the program
Switches: Modify command’s behaviour
Arg#: Arguments passed to command
10. Getting Help
Online manual available
Searchable
Command/File name
Type/Section
Keyword
Not always easy to understand
11. Man Page Sections
Solaris Linux Contents
1 1 User commands
2 2 System calls
3 3 Library calls
4 5 File formats
5 7 Misc. files and documents
6 6 Games and demos
7 4 Devices/Network protocols
1m 8 Administration commands
9 9 Kernel specs/interfaces (?)
12. Using man
man command
Look up command
man n intro
Contents of section n
man –k string
Search short descriptions (apropos)
man –K string
Search all man pages for string
14. File/Directory Commands
Files Directories
cp – Copy ls – List contents
mv – mv – Move/Rename
Move/Rename cd – Change Dir
rm – Remove pwd – Current Dir
cat – View all mkdir – Create
more – View page rm/rmdir – Remove
less – View page
15. Copies, moves, and
renaming
cp file1 file2|dir1
Copy file1 to file2 or into directory dir1
cp –r[p] dir1 dir2
Copy directory dir1 to dir2
mv file1 file2|dir2
Moves file1 to file2 or into directory
dir1
Renames file1 to file2 if both in same
directory
16. Viewing files
cat file1
Display the contents of file1 to the
screen
more file1
Display the contents of file1 one
screen at a time
less file1
Same as more but more powerful
17. Removing files and
directories
rm file1 file2 ...
Removes list of files
rmdir dir1
Removes dir1 only (if it is empty)
rm -r dir1
Removes dir1 and all
subdirectories/files
VERY Dangerous!!!
18. Other directory commands
ls [-la] [file/dir list]
Lists files in a directory
mkdir dir1
Creates directory dir1
cd dir1
Makes dir1 the current directory
pwd
Displays the current directory path
19. UNIX Filesystem Hierarchy
/ (root)
bin sbin home etc boot root usr var dev lib
scott alice bob bin sbin local lib tmp
n321 mail public_ht bin man lib share src
ml
20. So many bins…
/ (root)
bin sbin usr
bin directories: User programs bin sbin local
sbin directories: System
programs
/bin & /sbin – Needed at boot
time
/usr/bin & /usr/sbin – available bin sbin
when system fully operating
21. Windows Files/Directories
UNIX/Linux Windows
/usr %SystemRoot% (C:Windows)
/bin & %SystemRoot%System32
/usr/bin
/dev %SystemRoot%System32Drivers
/etc %SystemRoot%System32Config
/tmp C:Temp
/var/spool %SystemRoot%System32Spool
Source: Principles of Network and System
Administration by Mark Burgess
22. Relative & Absolute Paths
Absolute Path
Given from “root” directory
Example: /usr/local/bin
Relative Path
‘.’ – Current Directory
‘..’ – Parent Directory
‘~’ – Home Directory
Example: ~/.. = /home
23. Filter Commands
cat – View all sort – Sort by
more – View page field
less – View page uniq – Remove
dup
head – View first
cut – Get fields
tail – View last
wc – word count paste – Merge
Files
grep – Search
text
tr – Replace text
24. Heads or Tails
head -# file
Displays the first # lines of file1
tail -# file
Displays the last # lines of file1
wc [-cwl] file
Counts number of characters, words,
or lines in file
25. Sorting
Lists the contents of a file based on
order
sort file
Sorts file alphabetically by line
sort -r file
Sorts file in reverse order by line
sort –t: -n +2 file
Sorts file based on the 3rd field (+2)
in numeric order (-n)
with fields separated by ‘:’ (-t:)
26. Extracting info
cut –f# [-d%] file
Displays # fields separated by %in
file
grep search-string file
Displays all lines with search-
string in file
Can create very sophisticated search
conditions
27. Changing file contents
paste file1 file2
Merge contents of file1 and file2
line by line
tr c1 c2 < file
Changes all occurrences of
character c1 to c2 in file
28. Misc. Commands
date
Set system time/date
View (formatted) system time/date
cal
Displays calendar
echo
Display strings & shell variables
29. Visual Editor (vi)
Very Powerful
3 modes
Command
Insert
ex
Can be frustrating to learn initially
Important to have cheat sheet
handy
30. emacs versus vi
Georgy says…
Slashdot (Asked by markhb):
vi or emacs?
Georgy:
I'm so glad you asked!! Both. vi for quick
editing, emacs (NOT xemacs) for coding
projects. :q!:q!:q!
Source: Slashdot.com, 8/20/2003