shell学习之脚本认知(一)

613 阅读2分钟

shell介绍

Shell的作用是解释执行用户的命令,用户输入一条命令,Shell就解释执行一条,这种方式称为交互式(Interactive),Shell还有一种执行命令的方式称为批处理(Batch),用户事先写一个Shell脚本(Script),其中有很多条命令,让Shell一次把这些命令执行完,而不必一条一条地敲命令。Shell脚本和编程语言很相似,也有变量和流程控制语句,但Shell脚本是解释执行的,不需要编译,Shell程序从脚本中一行一行读取并执行这些命令,相当于一个用户把脚本中的命令一行一行敲到Shell提示符下执行。

shell创建与运行

  1. vim /etc/passwd 其中最后一列显示了用户对应的shell类型
    
  2. 在命令行输入命令后,一般情况下Shell会fork并exec该命令,执行内建命令相当于调用Shell进程中的一个函数,并不创建新的进程,凡是用which命令查不到程序文件所在位置的命令都是内建命令,内建命令没有单独的man手册

    man bash-builtins # 在man手册中查看内建命令
    
  3. $? 内建命令执行后有一个状态,0-成功,1-失败
    案例:cd ..
    	echo $?
    	0
    
  4. 编写脚本

    sh脚本格式命名

    #! 后面指定的解释器/bin/sh解释执行

    vi 脚本名称.sh
    #! /bin/sh
    
    # 执行需要增加权限
    chmod a+x ***.sh 
    
  5. 执行脚本

    $ /bin/sh ./***.sh  # 不需要增加权限
    
    $ source ./***.sh # 交互式shell执行
    
    $ . ./***.sh #交互式shell执行
    
    source或者.命令是Shell的内建命令,这种方式也不会创建子Shell,而是直接在交互式Shell下逐行执行脚本中的命令。
    
    $ (cd ..;ls -l) # 会fork出一个子Shell执行小括号中的命令, ;分隔多条命令
    

文章规划

好了各位,以上就是这篇文章的全部内容了,能看到这里人啊,都是人才。

如果这个文章写得还不错,觉得「王采臣」我有点东西的话 求点赞👍求关注❤️求分享👥 对耿男我来说真的非常有用!!!

白嫖不好,创作不易,各位的支持和认可,就是我创作的最大动力,我们下篇文章见!

王采臣 | 文  【原创】

如果本篇博客有任何错误,请批评指教,不胜感激 !

微信公众号: