Shell basic

Preview:

DESCRIPTION

introduce the basic shell command and some use Cases.

Citation preview

Shell Basic

@zhiyelee!F2E!

https://github.com/zhiyelee

How to learn

• man man man !

• practice

dir/file manipulation

• mkdir / mkdir -p!

• rmdir / rmdir -p!

• rm -rf!

• cp -i!

• ln -s

cd

ls

• ls -- list directory contents!• Options!

• -l,-a,-t!• -Ut

ls

tree

• tree -- list files in tree-like format!• Options!

• -a,-d,-f!• -P,-I

tree

Display Files

cat

• cat - Concatenate Files!• cat -n !• cat -s

cat

cat multiple files

less & more

• less/more!

• less line move,more page move!• does not read the entire input file before starting!• less -N line-number!• ls /etc | less

tail & head

• tail !• tail -f!• tail -5!

!

• head!• head -5

wc

• wc -l

echo

• echo -e!• echo -n

echo

Identifying Commands

• type - Display A Command's Type!• type cd!• type ll

type

Identifying Commands

• which - Display An Executable's Location!• which ls!• cat `which hlfile`

which

Redirction

Redirection

• stdin,stdout,stderr!• 0 1 2!

• /dev/null!• < > >>!• Case!

• redirect error!• redirect stdout and error to a file

2>&1

Permissions

" chmod – Change a file's mode!

" umask – Set the default file permissions!

" su – Run a shell as another user!

" sudo – Execute a command as another user!

" chown – Change a file's owner

from《The Linux Command Line》William E. Shotts, Jr.

umask

• umask!

• the default permissions of created file!

• octal notation !

• express a mask of bits to be removed from a file's mode attributes!

• common default value: 022 002

umask

umask 022

owner group other

original file mode rw-110

rw-110

rw-110

umask 000 010 010

mode of created file rw-110

r—100

r—100

umask 002

owner group other

original file mode rw-110

rw-110

rw-110

umask 000 000 010

mode of created file rw-110

rw-110

r—100

chmod

• chmod!

• change file mode(permissions)!

• usage!

• chmod 755 file!

• chmod ug+x file

chmod

Search

Grep

• Options!• -v, -l,-L, -A, -B,n, -r/-R!

• Case!• get templates contains `misc` cssfile!

• get templates not contain `footer.php`!

• contain `misc` but not `footer.php`

get templates contains `misc` cssfile

get templates not contain `footer.php`

contain `misc` but not `footer.php`

Grep

Find

• Options!• -name, -perm, -delete,-regex!• !!

• Case!• find all .swp files!• delete all .swp files!• find not .png and jpg file

find and delete

Find

find perm

trap

Case Study

• deploywww!• fetch all imgs of a cssfile!• git pu

fetch all imgs of a css file

git pu

Reference

• 《The Linux Command Line》William E. Shotts, Jr.!

• 20130109 - 李志业 - Shell编程

Recommended