初次学习linux脚本文件笔记

单引号和双引号:单引号和双引号都能关闭shell对特殊字符的处理。不同的是,双引号没有单引号严格,单引 号关闭所有有特殊作用的字符,而双引号只要求shell忽略大多数,具体的说,就是①$美元符号②`反引号③/反斜杠,这3种特殊字符不被忽略。 不忽略美元符号意味着shell在双引号内部也进行变量名替换。

 

条件测试空格问题:通常用" [ ]"来表示条件测试。注意这里的空格很重要。要确保方括号的空格,例如:[(空格) -f "somefile"(空格) ],如果没有空格会报错


脚本中的数据类型

类型声明指令declare

1)       i、a、f、r分别用来声明整数,数组,函数,只读类型变量

2)       默认情况下是字符和字符串类型

3)       脚本语言是弱类型语言


for语句

有两种形式

1)        

  For var in 1 2 3 4 5 6;do

     添加自己的语句

  Done

2)        

  For((i=0;i<100;i=i+1))//注意这里必须有两对括号,其中i为整型

  Do

    添加自己的语句

  done


help documets问题

当要将几行文字传递给一个命令时,here documents(译者注:目前还没有见到过对该词适合的翻译)一种不错的方法。对每个脚本写一段帮助性的文字是很有用的,此时如果我们四有那个 here documents就不必用echo函数一行行输出。 一个 "Here document" 以 << 开头,后面接上一个字符串,这个字符串还必须出现在here document的末尾。

cat <<HELP
ren -- renames a number of files using sed regular expressions
USAGE: ren 'regexp' 'replacement' files...
EXAMPLE: rename all *.HTM files in *.html:
 ren 'HTM$' 'html' *.HTM
HELP

要注意的是这些字符串要在两个HELP之间,同时也不必一定是HELP,取其它名字也可以


传递的参数问题

$0,$1…….$n代表这是第n个参数,其中$0表示脚本本身名字

比如:终端中输入./test my name is

$0 表示 ./test

$1 表示 my

$2 表示name

$3表示 is

还有就是

#” 代表位置参数的数量 $#

*” 代表所有的位置参数 $*

继续如上面的终端输入,则$#为3,$*表示my name is

 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值