shell脚本
shell脚本:大约70%以上+计划任务
计划任务有是分,时,日,月,周+命令或脚本
shell脚本什么时候用:做一些复杂的,重复性的任务
shell脚本的命名
vi+脚本的命名.sh
#!/bin/bash
linux 命名
注:shell脚本在执行的时候是从上往下依次进行的,如果中间有一次报错继续执行下一行
运行shell脚本的方法:
bash+脚本名称
sh+脚本名称
source+脚本名称
变量名命名规则:不能以数字,特殊符号开头
双引号 " " 会打印变量名的变量值,弱转义
单引号’ ’ 会直接输出变量名,强转义
解释器
任何语言都是有解释器的,如python,php, java, c, c++
所有的语言在运行的时候,都是先转换成机器码,然后再去运行的
shell解释器:#!/bin/base 或者 #!/bin/sh
查看Linux系统:cat /etc/rednat-release
查看Linux内核:uname -r
显示全部信息: uname -a/all
显示在网络上的主机名称:uname -n
如何查看命令的绝对路径:which 命令
修改系统语言:vi /etc/locale.conf
shell 脚本变量
- 系统变量:echo $ PWD(HOSTNAME,LANG)
- 环境变量:PATH ,apache,mysql
- 自定义变量:
shell脚本变量:变量名=变量值
例:name=csdn
如何查看变量名的变量值
echo $变量名
例图
4.位置变量:例vi csdn.sh
#!/bin/bash
echo '$1’的变量是"$1"
echo '$2’的变量是"$2"
echo '$3’的变量是"$3"
:wq
bash csdn.sh A B C
$1的变量是A
$2的变量是B
$3的变量是C
A B C
$ *($@):所以参数列表
例: vi csdn.sh
#!/bin/bash
echo '$1’的变量是"$1"
echo '$2’的变量是"$2"
echo '$3’的变量是"$3"
echo $*
:wq
bash csdn.sh A B C
$1的变量是A
$2的变量是B
$3的变量是C
A B C
想要ABC竖着的是:例
cat csdn.sh
#!/bin/bash
echo '$1’的变量是"$1"
echo '$2’的变量是"$2"
echo '$3’的变量是"$3"
for i in $*
do
echo $i
done
:wq
bash csdn.sh A B C
$1的变量是A
$2的变量是B
$3的变量是C
A
B
C
$# :添加到所有参数的数量
例:
cat csdn.sh
#!/bin/bash
echo '$1’的变量是"$1"
echo '$2’的变量是"$2"
echo '$3’的变量是"$3"
echo $#
:wq
bash csdn.sh A B C
$1的变量是A
$2的变量是B
$3的变量是C
3
$$(进程号),$0(shell本身的文件名)的用处 cat csdn.sh
例:#!/bin/bash
echo '$1’的变量是"$1"
echo '$2’的变量是"$2"
echo '$3’的变量是"$3"
echo $$
echo $0
:wq
bash csdn.sh A B C
$1的变量是A
$2的变量是B
$3的变量是C
111750 注(进程号)
csdn.sh 注($0)