文件名匹配
* 任意字符串
? 单个字符
[ ] 其中包含的字符
[! ]非其中包含的字符
zged1a_eda 349 : ls -l D*
-rw-r--r-- 1 eda oinstall 1499 Nov 2 08:23 Diff_Report.txt
-rw-r--r-- 1 eda oinstall 4069534 Nov 2 08:23 Diff_result.txt
zged1a_eda 350 : ls -l Diff_?????t.txt
-rw-r--r-- 1 eda oinstall 1499 Nov 2 08:23 Diff_Report.txt
-rw-r--r-- 1 eda oinstall 4069534 Nov 2 08:23 Diff_result.txt
zged1a_eda 351 : ls -l [LD]*
-rw-r--r-- 1 eda oinstall 1499 Nov 2 08:23 Diff_Report.txt
-rw-r--r-- 1 eda oinstall 4069534 Nov 2 08:23 Diff_result.txt
-rw-r--r-- 1 eda oinstall 734 Nov 2 08:23 Legacy_1.txt
-rw-r--r-- 1 eda oinstall 734 Nov 2 08:23 Legacy_2.txt
-rw-r--r-- 1 eda oinstall 734 Nov 2 08:23 Legacy_3.txt
zged1a_eda 353 : ls -l [!ab]*
-rw-r--r-- 1 eda oinstall 1499 Nov 2 08:23 Diff_Report.txt
-rw-r--r-- 1 eda oinstall 4069534 Nov 2 08:23 Diff_result.txt
-rw-r--r-- 1 eda oinstall 734 Nov 2 08:23 Legacy_1.txt
-rw-r--r-- 1 eda oinstall 734 Nov 2 08:23 Legacy_2.txt
-rw-r--r-- 1 eda oinstall 734 Nov 2 0:23 Legacy_3.txt
zged4a_eda 315 : ls -l [a-z]*
lrwxrwxrwx 1 eda oinstall 4 Jan 18 03:33 linktest -> test
-rwsrwlrwx 1 eda oinstall 0 Jan 18 03:05 test
-rw-r--r-- 1 eda oinstall 0 Jan 19 02:00 testnew
-rw-r--r-- 1 eda oinstall 0 Jan 18 02:00 testold
-rw-r--r-- 1 eda oinstall 458 Jan 18 09:35 tmp
lrwxrwxrwx 1 eda oinstall 4 Jan 18 03:39 u04 -> /u04
zged4a_eda 316 : ls -l [0-9]*
-rwxr-xr-x 1 eda oinstall 4911 Jan 18 09:33 502163_p_log.xml
Shell输入与输出
zged4a_eda 317 : echo "test"
test
zged4a_eda 318 : echo "test :\c"
test :zged4a_eda 319 :
zged4a_eda 319 :
zged4a_eda 319 : echo "test \n"
test
zged4a_eda 321 : echo "test\t\ttest"
test test
用echo写文件,追加文字
zged4a_eda 324 : echo "test" > test
zged4a_eda 325 : more test
test
zged4a_eda 326 : echo "test a world" > test
zged4a_eda 327 : more test
test a world
zged4a_eda 328 : echo "test a world" >> test
zged4a_eda 329 : more test
test a world
test a world
zged4a_eda 330 : echo "append `date`" >> test
zged4a_eda 331 : more test
test a world
test a world
append Wednesday January 19 06:17:47 GMT 2011
\用来转义
zged4a_eda 332 : echo "\"test\"" >> test
zged4a_eda 333 : more test
test a world
test a world
append Wednesday January 19 06:17:47 GMT 2011
"test"
Read
zged4a_eda 334 : read name
alice
zged4a_eda 336 : echo $name
alice
zged4a_eda 337 : read name surname
alice zhao
zged4a_eda 338 : echo $name
alice
zged4a_eda 339 : echo $surname
zhao
cat显示文件,创建文件,显示控制字符
创建文件,用ctrl+d结束输入
zged4a_eda 354 : cat > file1
this is a greate
editor
hello
world!
显示文件
zged4a_eda 355 : more file1
this is a greate
editor
hello
world!
Cat –v filename 可以显示控制字符
重定向 >
管道符号 | : 把一个命令的输出作为另一个命令的输入
重定向很有用,尤其和awk, sed, grep结合起来使用
zged4a_eda 364 : ls -la
total 96
drwxr-xr-x 2 eda oinstall 8192 Jan 19 06:37 .
drwxrwxrwx 53 oracle dba 8192 Jan 13 08:14 ..
-rwxr-xr-x 1 eda oinstall 4911 Jan 18 09:33 502163_p_log.xml
-rw-r--r-- 1 eda oinstall 38 Jan 19 06:39 file1
lrwxrwxrwx 1 eda oinstall 4 Jan 18 03:33 linktest -> test
-rwxrwlrwx 1 eda oinstall 79 Jan 19 06:18 test
-rw-r--r-- 1 eda oinstall 0 Jan 19 02:00 testnew
-rw-r--r-- 1 eda oinstall 0 Jan 18 02:00 testold
-rw-r--r-- 1 eda oinstall 458 Jan 18 09:35 tmp
lrwxrwxrwx 1 eda oinstall 4 Jan 18 03:39 u04 -> /u04
zged4a_eda 365 : ls -l | awk '{print $1"\t"$2}' 仅输出前两列
total 64
-rwxr-xr-x 1
-rw-r--r-- 1
lrwxrwxrwx 1
-rwxrwlrwx 1
-rw-r--r-- 1
-rw-r--r-- 1
-rw-r--r-- 1
lrwxrwxrwx 1
tee:把输出的一个副本输送到标准输出,另一个副本拷贝到相应的文件中
zged4a_eda 375 : ls -l | tee log
tee –a file
-a是append
标准输入,输出,错误分别对应文件描述符0, 1, 2
重定向标准输入输出错误
Command > filename 标准输出重定向到文件
Command > filename 2>&1 标准输出和错误重定向到文件
Command 2 > filename 标准错误重定向到文件
Command < filename > filename 以一个文件作为标准输入,以另一个文件作为标准输出
zged4a_eda 378 : cat > alpha
b
a
d
c
abc
efg
ok
zged4a_eda 431 : sort < alpha 将alpha文件作为输入,进行排序
a
abc
b
c
d
efg
ok
<非常有用。Shell将<<之后直到下一个同样的分界符之前的所有内容都作为输入。比如此处用END作为分界符。
zged4a_eda 432 : cat >> alpha <
> hello,
> i'm using << character to do some testing
> bye
> END
重定向标准错误
zged4a_eda 434 : grep "test" smaple
grep: can't open smaple
zged4a_eda 435 : grep "test" smaple 2>/dev/null
可以用这种格式,执行一个命令,标准错误重定向,使用分界符,在使用sqlplus连接数据库,执行命令,同时保存错误输出很有用。
cat >> filetest 2>&1 <
> this is a testing
> END
exec 命令 命令参数
功能:当shell执行到exec语句时,不会去创建新的子进程,而是转去执行指定的命令,当指定的命令执行完时,该进程,也就是最初的shell就终止了,所以shell程序中exec后面的语句将不再被执行。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/11903161/viewspace-684232/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/11903161/viewspace-684232/