shell脚本的简单制作与格式

shell脚本基础

1、第一个脚本

vimfirst.sh

shell脚本的简单制作与格式


分别使用三种方法执行脚本:

./first.sh (需要有可执行的权限)

shfirst.sh

. first.sh(或source first.sh

2重定向与管道符

1重定向输出>

shell脚本的简单制作与格式


2重定向输出>>追加)

shell脚本的简单制作与格式


3)重定向输入<</font>

useraddjerry

vi pass.txt(在里面输入123456,保存退出

shell脚本的简单制作与格式


注明:将jerry用户的密码设置为123456

4错误重定向2>

shell脚本的简单制作与格式


5)混合重定向输出&>

例如:在编译源码包的自动化脚本中,若要忽略makemake install等操作过程的信息,可以将其定向到空文件/dev/null

先挂载光盘(第一章的linux安全及高级应用_web网络服务.iso”),将光盘的中的httpd-2.2.17.tar.gz文件解压到/usr/src下,编写脚本安装。

vim httpd_install.sh

shell脚本的简单制作与格式


chmod+x httpd_install.sh(设置可执行权限)

./ httpd_install.sh (执行脚本,等待结束后,查看结果)

6)管道符(|

先查看以/bin/bash结尾的行

shell脚本的简单制作与格式

输出用户名登录shell

shell脚本的简单制作与格式


7)管道符(|):提取根分区的磁盘使用率信息

shell脚本的简单制作与格式


二、使用shell变量

1、定义新的变量

shell脚本的简单制作与格式


2、变量赋值的特殊操作

1)双引号使用():赋值的内容包含空格时

shell脚本的简单制作与格式


2)单引号使用():赋值的内容中包含$,‘’,\等具有特殊含义的字符时

shell脚本的简单制作与格式


3)反撇号使用(`:用于将某个命令的输出结果赋值给变量

shell脚本的简单制作与格式


4)$()来代替反撇号操作,可以解决嵌套的问题

shell脚本的简单制作与格式aimg.cn/mw690/006OWcmezy7cGJj0PTc3a&690">

5read命令:用来提示用户输入信息,例如:

shell脚本的简单制作与格式


3、设置变量的作用范围

新定义的变量只在当前shell有效,如果想进入新的shell环境同样有效,就需要使用export命令将变量导出为“全局变量

shell脚本的简单制作与格式


exit

也可以在export导出全局变量的同时,也可以为变量赋值,例如:

shell脚本的简单制作与格式


4、数值变量的运算

加(+),减(-),乘(\*),除(/),求模(%

shell脚本的简单制作与格式

三、特殊的shell变量

1、环境变量(系统自身就有)

环境变量系统安装好了就存在,不用创建,可以直接使用,查看一下环境变量

shell脚本的简单制作与格式



我们可以把脚本直接添加$PATH搜索路径中去,这样执行脚本的时候就不用加./

如:first.sh脚本在/root目录下

shell脚本的简单制作与格式


2、位置变量(系统自身就有)

位置变量也称之为位置参数,使用$1$2$3$4..$9表示

shell脚本的简单制作与格式


3、预定义变量(系统自身就有)

$#(表示命令行中位置参数的个数)

$*(表示所有位置参数的内容

$?(表示前一个命令执行后的返回状态,返回值为0表示执行正确,非0表示出现异常)

$0(表示当前执行的脚本或程序的名称

如:编写一个备份的小脚本

shell脚本的简单制作与格式



shell脚本的简单制作与格式

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...