ls: LiSt files• Used to list files contained in a directory • Can narrow the search using pattern matching • Examples – ls displays ‘all’ the files in the directory – ls cats display
Trang 1Chapter 3:
Command Line Utilities
Doin’ stuff
Trang 3Typing Commands
• Beware of special characters
• Characters that have special meaning to the shell
• Shell expands, modifies and interprets
special characters before issuing the
command
Trang 4Special Characters
• & ; | * ? ‘ “ ` [ ] ( ) $ < > { } ^ # / \ % ! ~ +
• Plus whitespace (tabs, spaces, newlines)
• Do not use these in filenames unless you
have to
• To use them, either put in single quotes,
or proceed with a backslash
– ls ‘filename with special chars!!’
– ls \[cat\]
Trang 5Special Characters con’t
• All special characters have special meaning
to the shell
• We’ll explore these in great detail in
upcoming chapters
Trang 6• Linux & Unix come with thousands of utilities
• Some used explicitly, others implicitly
• Some text-based, some GUI, some both
Trang 7Some tips before we start
• Tab completion
– When typing a filename or command name, you can type the first few letters then hit TAB to auto- complete the command
• Pipe (|) symbol
– Used to chain commands together
– The output of one command becomes the input
of another
– We’ll revisit this in detail later
Trang 8ls: LiSt files
• Used to list files contained in a directory
• Can narrow the search using pattern
matching
• Examples
– ls displays ‘all’ the files in the directory
– ls cats displays the file cats in the directory – ls ca* displays files starting with ‘ca’
Trang 9cat: catenate a file
• Displays the contents of one or more files
• Beware – don’t try with binary files
• Examples
– cat myfile displays contents of myfile
– cat file1 file2 displays contents of file1
followed by contents of file2
Trang 10rm: ReMoves a file
• Similar to del in DOS
• Use the –i option to invoke interactive mode,
which prompts you if you’re sure
• Examples:
– rm myfile deletes myfile
– rm –i myfile prompts you before deleting
Trang 11more and less: pagers
• more and less are similar in that they both break up long files into page long chunks
• Press h to display possible commands
• Examples
– less myfile displays myfile one page at a
time
Trang 13cp: CoPies files
• Usage: cp sourcefile destinationfile
• Creates a copy, leaves sourcefile intact
• If destinationfile exists, it will be overwritten
– Unless you use –i option
• Example:
– cp myfile myfile.backup
Trang 14mv: MoVe files / change name
• Usage: mv existingfile newfile
• Just like cp, can overwrite with –i option
• Renames a file, which can also move it to another directory
• Examples:
– mv myfile foshizzle
– mv /dir1/myfile /dir2/myfile
Trang 15lpr: Line PRinter
• Places files into the print queue
• Usage: lpr [-Pprintername] files
• You can check the status of queue with lpq
• You can delete a job with lprm
• Sorry, we don’t have a printer
Trang 16grep: global regular expression print
• Used to search for strings in files/output
• Usage: grep expression filename
• Returns lines with expression in filename
• Example:
– grep ‘automagically’ myfile
Trang 17head: display beginning
• Displays beginning of file
• head -X filename displays first X lines
• Check out pg 727/691 for more options
Trang 18tail: duh
• Displays the end of a file
• tail -X myfile displays the last X lines
• Check out pg 843/783 for more options
Trang 19sort: displays sorted info
• sort displays data in a sorted manner, without altering the original file
• Lots of options – sort alphabetically,
numerically, with or without repeats, reverse order, etc
• Check out pg 817/762
Trang 20uniq: removes duplicates
• uniq displays data, omitting successive
Trang 21file: what kind of file is this?
• Usage: file filename
• Tells you what kind of file you’re working with and what kind of data is in it
• Examples include program, shell builtin,
ASCII text, compressed data, etc
Trang 22echo: display text
• Displays (echoes) text back to the terminal screen
• Can print out contents of shell variables
• Useful in shell scripts
• In other words, seems dumb now but we’ll use it a lot down the road
Trang 23date: displays time and date
• Command options can change formatting
• Privileged accounts can use date to change date and time
• Can be useful for scripting
Trang 24script: captures session
• Captures all input and output on the terminal and saves to a file
• A good way to document your work, or
capture errors for analysis
• Type script to start capture, exit to quit
• By default stores everything in the file
typescript
Trang 25Text Converters
• unix2dos and dos2unix
• Unix and DOS use different end of line
characters
• Use these utilities when moving text files
back and forth between Windows and Linux systems
• Weird script error? Try dos2unix
Trang 27Uncompressing files
• bunzip2 compressed-file
• gunzip compressed-file
• ucompress compressed-file
Trang 28tar: Tape ARchive
• Packs and unpacks files from archives
• *Does not compress, only assembles*
• Tons of options, allowing you to add or
remove files from archive, and also apply compression using third party support
Trang 29which: locates utilties
• Will display the location of a utility
• which ls displays location of ls command
you’re using
• In case of there being multiple locations,
which only displays the first (i.e., the one
you will be using)
Trang 30whereis: locates utilities
• Similar to which, but displays the utilities in a
standard set of locations
• The first one listed may not be the one you
will issue when you enter the command
• All depends on your PATH (chapter 4)
Trang 31• which and whereis do not list shell builtins
• Shell builtins are functions that are internal to the shell itself – no binary executable
• To see if you’re using a builtin, use type
Trang 32apropos: what do I use?
• Not sure what utility you’re looking for?
• Try apropos keyword
• Displays utilities and libraries related to your keyword
• Found one, but not sure? whatis utility to
show what it does, or check man page
Trang 33locate: search for files
• System maintains a database of files
• Your system administrator should configure a job to regularly update this database
• Searches for any kind of file – not just utilities
• Some systems use slocate (secure)
• Latest distros use mlocate via locate
Trang 34who: Who’s online?
• Displays what users are logged on
• Also displays when they logged on, and with what device (terminal or console, etc)
• Also try who am i
Trang 35finger: reach out and touch …
• finger by itself displays users logged on like
who, but also shows idle time and office
location
• finger username shows info about that user,
like home directory, last logon, their shell, if they have unread mail, and plan and project files
Trang 37write: send a message
• write username opens up a text-based chat
with the user
• Type message
• Wait for response
• CTRL-D to exit write
Trang 38mesg: Enable/disable write
• Usage: mesg y|n
• Turns off whether users can write you or not
• Useful if you don’t want to be bugged
Trang 39mail: system mail
• Our system is a closed system
• You can send mail to other users on the system
• No public mail