shell编程

一、什么是shell?

shell是Unix系统用户与操作系统交互最基本的工具。

二、shell具有什么功能?

  • 命令解释执行的功能
  • 系统环境设置
  • 输入输出的重新定向
  • shell程序语言的设计。。。

三、shell的基本概念

shell编程四、shell基本功能详解

1、shell命令解释过程

shell编程

暂时是搞不懂,命令解释是信息流?read(),fork()又是什么意义,父进程为什么会等待?这些问题还是要去完善。

2、shell输入输出重定向

默认状态下,shell将命令的输入流设定为键盘,输出流为显示器,错误流也是显示器。

可通过以下命令实现重定向:三个符号:<、>>、>

例如:ls -l > ls.txt

            ls-l /home/user1 > ls.txt

            ls-l /home/user1 >>ls.txt

重定向符<:将标准输入从键盘充重新定义到另外的流。

例如:prog<infile,即prog命令将从文件infile中读取参数

            sh<user1.sh,表示要执行的user1.sh这个shell程序

重定向符:<,>>,>混合使用。

eg:prog<infile>outfile,表示prog命令从infile中获取命令参数,然后将执行结果输出到文件outfile中

3、错误流重定向

Cshell中使用的错误流重定向符是:>&,

4、管道线处理

管道线可以实现将一个程序或命令的输出作为另一个程序或命令的输入,管道线作为两个命令之间的分隔符。“|”

eg:    $ ls -l > tempfile

        $wc -l tempfile

        $rm tempfile

    管道线处理:$ls -l | wc -l

";"、"&"、“&&”、“||”,可以替换管道线“|”

shell编程