1.向脚本传递参数
#!/bin/bash #功能:打印文件名与输入参数 #作者:OLIVER echo $0 #打印文件名 echo $1 #打印输入参数
执行结果:
2.在脚本中使用参数
#!/bin/bash #功能:输入参数的使用 #作者:OLIVER cp $1 $2 #根据输入参数复制文件到指定位置
执行结果:
3.函数的使用
#!/bin/bash
#功能:函数的使用
#作者:OLIVER
run(){
echo "Hell world"
}
run
运行结果:
4.连接两个字符串
#!/bin/bash #功能:字符串连接 #作者:OLIVER var1="My name is :" var2="Tom" var=${var1}${var2} echo $var
5.两个整数相加
#!/bin/bash
#功能:两个整数相加
#作者:OLIVER
a=3
b=4
let sum=$a+$b
echo "The sum is :$sum"
除了上述方法还有其他的方法:a=1 b=2
echo $((a+b)) #方法2
echo $[ $a+$b ] #方法3
expr $a + $b #方法4
echo $a+$b|bc #方法5
awk 'BEGIN{print '"$a"'+'"$b"'}' #方法6
6.检查文件系统中是否存在某个文件
声明:文件夹/qinys/oliver下存在文件a.txt
#!/bin/bash #功能:判断文件是否存在 #作者:OLIVER if [ -f /qinys/oliver/a.txt ];then echo "File exists" else echo "File not exists" fi
运行结果:
7.shell脚本中的三种循环语法
#!/bin/bash #功能:三种循环 #作者:OLIVER #for循环 for((i=0;i<=5;i++)); do echo "for循环第$i次" done echo "====================" #while循环 count=1 while [ $count -lt 5 ]; do echo "while循环第$count次" let count++ done echo "====================" #until循环 cnt=1 until [ $cnt -gt 5 ]; do echo "until循环第$cnt次" let cnt++ done
8.读取文件的第5行
head -5 filename | tail -1
9.使用echo截取字符串的一部分
语法:
echo ${var:x:y}
x: 起始位置(不包含)
y:截取长度
例子:
Linux:/qinys/oliver # str="My name is OLIVER"&&echo ${str:3:4}
name
10.echo ${str:-2}与echo ${str: -2}的区别
假如:str=abcd
echo ${str:-2}:表示当str为空的时候,则赋予值-2
echo ${str: -2}:表示截取str的后两位
11.echo命令替换字符串的一部分
echo ${variable//pattern/replacement}
12.去除字符串中的空格
Linux:/qinys/oliver # echo "a c djk"|tr -d " "
acdjk
13.输出0到20之间5的倍数
Linux:/qinys/oliver # for (( i=0; i<=20; i=i+5 )); do echo "Welcome $i times"; done
Welcome 0 times
Welcome 5 times
Welcome 10 times
Welcome 15 times
Welcome 20 times