session4
TRANSCRIPT
L2B Second Linux Course
Please visit our Facebook Group
Session4
L2B Linux course
L2B Second Linux Course
Session outlines: Text Processing Tools Text Processing Tools Exercises VIM VIM Exercises Basic System Configuration Tools
L2B Linux course
L2B Second Linux Course
Text Processing Tools
L2B Linux course
L2B Second Linux Course
Extracting Text cat
• One or more files less
• Easy to read• /text• n/N• v open an editor• Used by man command to present man pages
L2B Linux course
L2B Second Linux Course
Extracting Text head
• First 10 lines only• -n change number of lines
tail• Last 10 lines only• -n change number of lines• -f monitoring the file
L2B Linux course
L2B Second Linux Course
Extracting Text cut
• Display specific columns• -d column delimiter• -f number of field• -c cut by characters
– cut -c2-5 /usr/share/dict/words
L2B Linux course
L2B Second Linux Course
Extracting Text Grep
• Display lines where a pattern is matched• -i case-insensitively• -n print line numbers of matches• -v print lines not containing pattern• -AX include the X lines after each match• -Bx include the X lines before each match
L2B Linux course
L2B Second Linux Course
Tools for Analyzing Text wc
• Counts words, lines, bytes and characters• -l only line count• -w only word count• -c only byte count• -m character count (not displayed)
L2B Linux course
L2B Second Linux Course
Tools for Analyzing Text sort
• Sort text and original file is not changed• -r reverse (descending) sort• -n numeric sort• -u (unique) removes duplicate lines• -t c field separator• -k X which field• uniq & uniq -c
L2B Linux course
L2B Second Linux Course
Tools for Analyzing Text diff and patch
• diff foo.conf-broken foo.conf-works• -u better for patchfiles• Patching
– diff -u foo.conf-broken foo.conf-works > foo.patch– patch -b foo.conf-broken foo.patch
L2B Linux course
L2B Second Linux Course
Tools for Analyzing Text aspell
• Interactively spell-check files:– aspell check letter.txt
• Non-interactively list mis-spelled words in– Only reads data from standard input– aspell list < letter.txt
L2B Linux course
L2B Second Linux Course
Tools for Manipulating Text
tr and sed
L2B Linux course
L2B Second Linux Course
Tools for Manipulating Text Tr
• Converts characters in one set to corresponding characters in another set
• Only reads data from STDIN• tr 'a-z' 'A-Z' < lowercase.txt
L2B Linux course
L2B Second Linux Course
sed (stream editor) search/replace operations on a stream of text Normally does not alter source file -i to alter source file -i.bak to back-up and alter source file
L2B Linux course
L2B Second Linux Course
sed Examples sed 's/dog/cat/i' pets sed 's/dog/cat/g' pets sed '1,50s/dog/cat/g' pets sed '/digby/,/duncan/s/dog/cat/g' pets sed -e 's/dog/cat/' -e 's/hi/lo/' pets
L2B Linux course
L2B Second Linux Course
Characters for Complex Searches ^ represents beginning of line $ represents end of line Character classes as in bash:
• [abc], [^abc]• [[:upper:]], [^[:upper:]]
Used by: grep, sed, less, others
L2B Linux course
L2B Second Linux Course
VIM
L2B Linux course
L2B Second Linux Course
VIM Advantages: Speed: Do more with fewer keystrokes Simplicity: No dependence on mouse/GUI Availability: Included with most Unix-like OSes
Disadvantages Difficulty: Steeper learning curve than simpler
editors
L2B Linux course
L2B Second Linux Course
Three main modes: Command Mode (default): Move cursor,
cut/paste text Insert Mode: Modify text Exit Mode: Save, quit, etc
L2B Linux course
L2B Second Linux Course
First steps with vim vim filename(command mode) Insert mode
• I at the cursor • A append to end of line• I insert at beginning of line• o insert new a line (below)• O insert new line (above)
Exit mode• :w writes (saves) the file to disk• :wq writes and quits• :q! quits, even if changes are lost
L2B Linux course
L2B Second Linux Course
Command Mode Right Arrow moves right one character 5, Right Arrow moves right five characters Arrow Keys, h, j, k, l (the same as arrows) w, b Move by word ), ( Move by sentence }, { Move by paragraph xG Jump to line x gg Jump to the first line G Jump to the last line
L2B Linux course
L2B Second Linux Course
Command Mode As in less
• /, n, N As in sed The selected line only
• :1,5s/cat/dog/ All of the entire file
• :%s/cat/dog/gi
L2B Linux course
L2B Second Linux Course
Command Mode Line
• cc • dd • yy
Letter• cl • dl • yl
L2B Linux course
L2B Second Linux Course
Command Mode Word
• cw• dw • yw
Sentence ahead• c) • d) • y)
L2B Linux course
L2B Second Linux Course
Command Mode Sentence behind
• c(• d( • y(
Paragraph above • c{ • d{ • y{
L2B Linux course
L2B Second Linux Course
Command Mode Paragraph below
• c} • d} • y}
u undo Ctrl-r redo U undo all changes to the last modified line
L2B Linux course
L2B Second Linux Course
Command Mode v starts character-oriented highlighting V starts line-oriented highlighting Visual keys used with movement keys:
• w, ), }, arrows Highlighted text can be
• Deleted• Yanked• Changed• Filtered• search/replaced, etc.
L2B Linux course
L2B Second Linux Course
Command Mode Ctrl-w, s splits the screen horizontally Ctrl-w, v splits the screen vertically Ctrl-w, Arrow moves between windows Ctrl-w twice, Arrow moves between windows To search for help inside vim convert to the
exit mode and ask for help by running the following
• :help
L2B Linux course
L2B Second Linux Course
Configuring vi and vim :set
• :set number• :set all• :set number (:se nu)• :set nonumber (:se nonu)• :set ignorecase (:se ic)• :set noignorecase (:se noic)• :set showmatch (:se sm)• :set noshowmatch(:se nosm)• :set autoindent• :set noautoindent
L2B Linux course
L2B Second Linux Course
Configuring vi and vim :help :help something :set
• :set textwidth=3• :set textwidth=0• :set wrapmargin=10• :set wrapmargin=0
~/.vimrc vimtutor
L2B Linux course
L2B Second Linux Course
Basic System Configuration Tools
L2B Linux course
L2B Second Linux Course
Introduction Network interfaces are named sequentially:
eth0, eth1, etc Multiple addresses can be assigned to a
device with aliases Aliases are labeled eth0:1, eth0:2, etc. Aliases are treated like separate interfaces View interface configuration with :
ifconfig [ethX] Enable interface with ifup ethX Disable interface with ifdown ethX
L2B Linux course
L2B Second Linux Course
Graphical Network Configuration system-config-network System > Administration > Network
Network Configuration Files For Devices /etc/sysconfig/network-scripts/ifcfg-ethX Complete list of options in
/usr/share/doc/initscripts-*/sysconfig.txt
L2B Linux course
L2B Second Linux Course
Example Of Dynamic Configuration DEVICE=ethX HWADDR=0:02:8A:A6:30:45 BOOTPROTO=dhcp ONBOOT=yes Type=Ethernet
L2B Linux course
L2B Second Linux Course
Example Of Static Configuration DEVICE=ethX HWADDR=0:02:8A:A6:30:45 IPADDR=192.168.0.254 NETMASK=255.255.255.0 GATEWAY=192.168.2.254 ONBOOT=yes Type=Ethernet
L2B Linux course
L2B Second Linux Course
Network Configuration Files and Other Global Network Settings /etc/sysconfig/network
• NETWORKING=yes• HOSTNAME=server1.example.com• GATEWAY=192.168.2.254
L2B Linux course
L2B Second Linux Course
DNS configuration Server address is specified by dhcp or in
/etc/resolv.conf• nameserver 192.168.0.254• nameserver 192.168.1.254
L2B Linux course
L2B Second Linux Course
Setting the System's Date and Time GUI:
• system-config-date• System->Administration->Date & Time
CLI: date [MMDDhhmm[[CC]YY][.ss]]• date 01011330• Date 010113302007.05• Date 12312359• Date 123123592007• Date 01010101.01
L2B Linux course
L2B Second Linux Course
Scripting Taking input with positional parameters
• $1• $2• $3• $4, etc.• $*• $#
L2B Linux course
L2B L2B Second Linux Course Second Linux Course
Scripting Taking input with the read command
• read x• read -p "Enter a filename: " file
For More info Please Visit Our Facebook Group