2011-06-09 shell脚本学习

1 | (管道)符号可以在两程序之间建立管道(pipeline):

如:$who | wc -l

who的输出成了wccat > cnt_users

2 cat > ctn_users //建立一个文件,利用cat将终端输入写入文件

用Ctrl-D(表示end-of-file)来完成输入

 

3 现代Unix系统通常都有好几个shell,因而脚本的第一行开头处用#!来指定所用的shell的路径(还可以带相关参数)

如 /bin/bash -f

/bin/bash - 表示没有shell选项

 

4在命令行按两个【Tab】,所有指令都会显示出来,如果先输入几个首字母,如ca【tab】【tab】就会把所有以ca开头的命令列举出来

 

5 命令后面是选项(option),以一个破折号开头。

  选项是可有可无的(optional),后面可能需要加上参数(如 cc -o abc abc.c)

不需要参数的选项可以合并,如 tar -zxvf abc.tar.gz(最后面的-f 有参数,所以必须放在最后,然后跟上参数)

6 分号(;)可用来分隔同一行的多条命令。& 符号意味着,&前面的命令在后台执行,即shell不用等到该命令的完成,

就可以继续执行下一个命令

7 echo -n "...." 会在输出时省略结尾的换行符号

8 < 改变标准输入流 

 如 tr -d '/r' < dos.txt

> 改 变标准输出流

如 tr -d '/r' < dos.txt  > Unix.txt (先改变标准输入,再改变标准输出)

将dos.txt 里的 '/r' (回车)删除,再将数据输出到Unix.txt

注 > 是覆盖文件  >>是附加到文件的结尾处

  | (管道)符号 可以把第一个程序的标准输出作为第二个程序的标准输入

tr 是转换字符命令

shell默认的标准输入/标准输出都是终端。

因而当你打入命令:

cat

abc //你输入

abc //终端再重复打印出来

你可能感兴趣的:(2011-06-09 shell脚本学习)