shell编程教学(一)|了解shell编程

一、shell简介

Shell俗称壳,是指“为使用者提供操作界面”的软件(命令解析器)。它包在Linux内核外面,shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。

二、Shell脚本简介

打开文本编辑器(可以使用vi/vim命令来创建文件),新建一个文件test.sh,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意。将一些shell的语法与指令写在里面,然后用正规表示法,管道命令以及数据流重导向等功能,以达到我们所想要的处理目的。这个文件就叫Shell脚本。

三、如何写一个Shell脚本

1、编写一个简单的脚本

[root@server mnt]# vim hello.sh     ##脚本一般用.sh结尾,这样写脚本时会高亮显示
[root@server mnt]# cat hello.sh 
#!/bin/bash                         ##脚本使用的解释器,通常用幻数 "#!" 指定
echo hello shell                    ##脚本内容,echo是输出信息到屏幕

2、执行脚本

法一:
sh hello.sh

[root@server mnt]# sh hello.sh    ##sh 后面跟 要运行的脚本名称(使用sh作为解释器)
hello shell                       ##执行结果

法二:
chmod +x hello.sh
/mnt/hello.sh

[root@server mnt]# chmod +x hello.sh     ##给写的脚本加执行权限 
[root@server mnt]# /mnt/hello.sh         ##绝对路径执行脚本(使用幻数作为解释器)
hello shell

法三:
source hello.sh

[root@server mnt]# source hello.sh     ##使用当前shell作为解释器
hello shell

3、显示脚本运行过程

[root@server mnt]# sh -x hello.sh     ##-x显示脚本运行过程
+ echo hello shell
hello shell

4、shell的类型

一般用/bin/bash

[root@server mnt]# cat /etc/shells      ##在/etc/shells下查看
/bin/sh         # sh 是一个快捷方式,已经被/bin/bash所取代。
/bin/bash       # 大多数Linux系统默认使用的shell,/bin/bash包含的功能几乎可以
                 涵盖shell所具有的功能,所以一般的shell脚本都会指定它为执行路径。
/sbin/nologin   # 指用户不能登录
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh       # tcsh是csh的增强版,与 C shell 完全兼容。
/bin/csh        # csh是具有C语言风格的一种shell ,已经被/bin/tcsh所取代

四、SHELL编程注释

一般shell脚本要注上以下信息,作者,版本,邮箱,日期,描述,如果每次都自己编写太过于繁琐,如果能自动或有快捷键直接产生,那就节约了大量时间!现就赐予你”葵花宝典“

1)进入vim编写,手动按F5添加注释

[root@server ~]# vim /etc/vimrc
map <F5> ms:call WESTOS()<cr>'s

function WESTOS()
        call append(0,"#############################")
        call append(1,"# Author:    Allen          #")
        call append(2,"# Create_Date:".strftime("%Y-%m-%d")."    #")
        call append(3,"# Version:                  #")
        call append(4,"# Mail:                     #")
        call append(5,"# Description:              #")
        call append(6,"#############################")
endfunction

2)进入vim编写.sh结尾的文件,自动添加注释

[root@server ~]# vim /etc/vimrc
autocmd BufNewFile *.sh,*.script exec ":call WESTOS()"

function WESTOS()
        call append(0,"#############################")
        call append(1,"# Author:    Allen          #")
        call append(2,"# Create_Date:".strftime("%Y-%m-%d")."    #")
        call append(3,"# Version:                  #")
        call append(4,"# Mail:                     #")
        call append(5,"# Description:              #")
        call append(6,"#############################")
endfunction

截图献上:

[root@server mnt]# vim /etc/vimrc

在这里插入图片描述
[root@server mnt]# vim test.sh
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44297303/article/details/88047103