Command Line Interface (CLI)
CSCI N321 – System and Network Administration
Copyright © 2000, 2011 by Scott Orr and the Trustees of Indiana University
Section Overview
X WindowsConsoles and TerminalsUNIX CommandsUNIX Filesystemvi Editor
References
CQU COIT13146 System Administration Course Chapter 4 Chapter 5
X Windows
Familiar GUI interfaceVirtual screensRemote applicationsX-Terminal Windows Multiple concurrent session Scroll bars Cut, Copy & Paste
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
Why use the command line?
Always available GUI not installed/working Remote sessions
More efficientMore powerfulBetter understanding of what is happening
UNIX Terminals
Old Days Hardwired – serial connections Modems – remote connections
Network – telnetConsole Monitor/keyboard/mouse on system Boot/error messages display Headless servers
Virtual Consoles in Linux
Multiple sessions on one consoleSpecial 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)
Basic Philosophy
10% of work solves 90% of problemsSmaller is betterPortabilitySolve at right level
Be Creative!!!
Command Anatomy 101
command [-switches] [arg1] [arg2]…
Command: Name of the programSwitches: Modify command’s behavior Windows typically uses “/” instead of “-”
Arg#: Arguments passed to command
Getting Help
Online manual availableSearchable Command/File name Type/Section Keyword
Not always easy to understand
Man Page SectionsLinuxLinux ContentsContents
1 User commands
2 System calls
3 Library calls
5 File formats
7 Misc. files and documents
6 Games and demos
4 Devices/Network protocols
8 Administration commands
9 Kernel specs/interfaces (?)
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
Account Related Commands
login Start session
passwd Change Password
logout / exit Close session
File/Directory Commands
Files cp – Copy mv –
Move/Rename rm – Remove cat – View all more – View page less – View page
Directories ls – List contents mv – Move/Rename cd – Change Dir pwd – Current Dir mkdir – Create rm/rmdir – Remove
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|dir1 Moves file1 to file2 or into directory dir1
Renames file1 to file2 if both in same directory
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
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!!!
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
Windows (MSDOS) File/Directory Commands
Files copy – Copy move – Move rename - Rename del – Remove type – View all more – View page
Directories dir – List contents xcopy – Copy move – Move rename - Rename cd – Change Dir md/mkdir – Create rmdir – Remove
Linux Filesystem Hierarchy
/ (root)
bin var dev libusrrootbootetchomesbin
scott bobalice
n321 public_html
bin sbin local tmplib
man lib srcsharebin
So many bins…
/ (root)
bin usrsbin
bin sbin local
sbinbin
bin directories: User programssbin directories: System programs/bin & /sbin – Needed at boot time/usr/bin & /usr/sbin – available when system fully operating
Windows Files/Directories
UNIX/LinuxUNIX/Linux WindowsWindows
/usr %SystemRoot% (C:\Windows)
/bin & /usr/bin
%SystemRoot%\System32
/dev %SystemRoot%\System32\Drivers
/etc%SystemRoot%\System32\Config
Windows Registry (regedit)
/tmp C:\Temp
/var/spool %SystemRoot%\System32\Spool
Source: Principles of Network and System Administration by Mark Burgess
Windows RegistryHierarchical database of all system settingsRegeditOrganization Hives – Top level Keys – Individual settings within a hive
HKEY_LOCAL_MACHINEHKEY_LOCAL_MACHINE
HKEY_CLASSES_ROOTHKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIGHKEY_CURRENT_CONFIG
HKEY_CURRENT_USERHKEY_CURRENT_USER
HKEY_USERSHKEY_USERS
Relative & Absolute Paths
Absolute Path Given from “root” directory Example:
/usr/local/bin (Linux) c:\windows\system32 (Windows)
Relative Path ‘.’ – Current Directory ‘..’ – Parent Directory ‘~’ – Home Directory Example: ~/.. = /home
Filter Commands
cat – View allmore – View pageless – View pagehead – View firsttail – View lastwc – word count
sort – Sort by fielduniq – Remove dupcut – Get fieldspaste – Merge Filesgrep – Search texttr – Replace text
More or Less
cat file Displays entire file to screen MSDOS - type
more file Displays file one screen at a time Same in MSDOS
less – replacement for more
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
Sorting
Lists the contents of a file based on ordersort file Sorts file alphabetically by line
sort -r file Sorts file in reverse order by line
sort –t: -n –k 3 file Sorts file based on the 3rd field –k 3) in numeric order (-n) with fields separated by ‘:’ (-t:)
MSDOS - find
Extracting info
cut –f# [-d%] file Displays # fields separated by %in file awk is a more advanced replacement
grep search-string file Displays all lines with search-string in file
Can create very sophisticated search conditions
MSDOS - find
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
Misc. Commands
date Set system time/date View (formatted) system time/date
cal Displays calendar
echo Display strings & shell variables Same in MSDOS
Visual Editor (vi)
Very Powerful3 modes Command Insert ex (very similar to MSDOS edlin)
Can be frustrating to learn initiallyImportant to have cheat sheet handy
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
Why vi?!?!?!
Because it is always there!!!
©www.nicedog.com
Top Related