Shell Script随笔1

1、简单介绍:

Shell Script ,Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。

2、什么情况下写shell script:

简单命令无法完成;

需要自动执行;

大量重复一致性操作。

3、shell中的特殊符号:

$  美元符号。用来表示变量的值。

#  井号。除了做为超级用户的提示符之外,还可以在脚本中做为注释的开头字母

"" 双引号。shell不会将一对双引号之间的文本中的大多数特殊字符进行解释,如#不再是注释的开头,它只表示一个井号“#”。但$仍然保持特殊含义。(在双引号中的$加变量名,即:$PARAM_NAME,依然会转换成变量的值.)

双引号对于某些特殊符号是不起作用的, 例如:”,$,\,`(反引号)

双引号和单引号不能嵌套。即:echo ‘””’  输出””,  echo “’’” 输出’’

'' 单引号。shell不会将一对单引号之间的任何字符做特殊解释。(在双引号中的$加变量名,即:$PARAM_NAME,不会转换成变量的值。)

`` 倒引号。命令替换。在倒引号内部的shell命令首先被执行,其结果输出代替用倒引号括起来的文本,不过特殊字符会被shell解释。echo ‘$HOME’(结果:$HOME)

 \ 斜杠。用来去掉在shell解释中字符的特殊含义。在文本中,跟在\后面的一个字符不会被shell特殊解释,但其余的不受影响。

 []中括号, 主要是用来测试条件的,通常放在if语句的后面。

echo [$HOME ]   (结果:[/home/zhangbingbing ]) (注意:HOME后面有空格)

echo [$HOME –eq ‘/zhang’]  (结果:[/home/zhangbingbing –eq /zhang])

{}大括号,主要是和$符号配合,作为字符串连接来使用

echo ${HOME}ismydir   (结果:/home/zhangbingbingismydir)

4、预定义的变量:

4.1特殊变量

$      shell变量名的开始,如$var

|      管道,将标准输出转到下一个命令的标准输入

$#     记录传递给Shell的自变量个数

#      注释开始

&      在后台执行一个进程

?     匹配一个字符

*      匹配0到多个字符(与DOS不同,可在文件名中间使用,并且含.)

$-     使用set及执行时传递给shell的标志位

$!     最后一个子进程的进程号 

$?     取最近一次命令执行后的退出状态(返回码)

$*     传递给shell script的参数

$@     所有参数,个别的用双引号括起来

$0     当前shell的名字

$n     (n:1-) 位置参数

$$     进程标识号(Process Identifier Number, PID)

>      输出重定向

<      输入重定向

>>      输出重定向(追加方式)

[]     列出字符变化范围,如[a-z]

4.2代值变量

* 任意字符串 

? 一个任意字符 

[abc] a, b, c三者中之一 

[a-n] 从a到n的任一字符 

4.3特殊字符的表达

\b 退回  
\c 打印一行时没有换行符 这个我们经常会用到  
\f 换页  
\r 回车  
\t 制表  
\v 垂直制表  
\\ 反斜线本身 

4.4其他字符

4.4.1分号

; 表示一行结束

4.4.2圆括号

() 表示在新的子shell中执行括号内的命令(这样可以不改变当前shell的状态。)

但是圆括号在单/双引号内失去作用,只作为普通字符。

4.4.3花括号

4.4.3.1分割命令的用法

与圆括号相似,但是:1. 花括号内的命令在当前shell中执行;2.花括号必须作为命令的第一个字符出现。

4.4.3.2 引用变量的用法

在$后面,表示变量名的开始和结束

4.4.4 方括号

相当与test命令,用来执行测试条件,通常用在需要判断条件的语句后面,例如:if,while等等。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值