本文共 1796 字,大约阅读时间需要 5 分钟。
sell脚本:
1.新建文件(扩展名.sh)
2.写代码3.给权限,执行(x执行,绝对路径,相对路径<./test.sh /root/test.sh>)vim a.sh#!/bin/bash(解释器是谁)例:vim a.sh
#!/bin/bash(hello word)
echo "hello word"chmod +x a.sh
bash a.shhello wordyum自动搭建的脚本: #!/bin/bash(搭建yum仓库)
echo "正在配置yum源..."
rm -rf /etc/yum.repos.d/*echo "[dvd]name=dvdenabled=1gpgcheck=0baseurl=" >/etc/yum.reopos.d/dvd.repoyum clean all &> /dev/nullecho "yum源配置完成"echo "yum源软件包数量:"yum repolist | tail -1装ftp
#!/bin/bash(安装vsftpd软件包)yum -y install vsftpdsystemctl restart vsftpdsystemctl enable vsftpd执行方式 ./1.sh /root/1.sh
脚本没有权限直接利用解释器 (ksh、sh)bash 1.sh 也是可以执行的 (以上执行的都是开启子进程的执行脚本)脚本没有权限source 1.sh 也可以执行脚本(但是不开启子进程)<一般很少用特例如exit>shell变量定义/赋值/查看:
自定义变量: 由数字、字母、符号组成不能以数字开头
a="值" echo $变量调用变量有时候存在歧义需要加{}a=11echo $aRMB (输出没有,没有该变量)echo ${a}RMBunset $a 撤销变量a(一般用不到)系统定义变量
PASH,HOME,USER,UID,HOSTNAMEPS1一级提示符,PS2二级提示符#!/bin/bash
echo $0输出脚本名称echo $1在执行脚本输出后面的第一个参数echo $2在执行脚本输出后面的第二个参数echo $3在执行脚本输出后面的第三个参数(..............)echo $*输出所有的参数echo $#输出所有的综合参数的个数echo $$输出PID数值echo $?查看上一命令执行成功没有输出为0执行成功其他数字都错$! Chakanzuihou de yige jincheng de PID hao例:(创建用户与设置密码)
#!/bin/bashuseradd $1echo $2 | passwd --stdin $1#!/bin/bash
read -p “请输入用户名:” namestty -echoread -p “请输入密码:” passstty echouaseradd $nameecho $pass | passwd --stdin $namestty (-)echo 回显 (关闭)打开
在shell中三种引号对赋值的影响(双引号” ”、单引号’ ’、反撇号`)<br/> 双引号 ” ” 可以界定一个完整的字符串<br/> echo a b<br/> echo “a b”<br/> 单引号 ‘ ’ 界定一个完整的字符串,屏蔽特殊符号即取消特殊符号的含义<br/> echo $a<br/> echo ‘$a’<br/> 反撇号
、 $( ) 其中只可以放命令,提取的是命令的结果<br/> 每周五备份/var/log,使用tar ,备份到root<br/> crontab -e<br/> 03 03 * * 5 tar -czf /root/log
date +%F`.tar.gz /var/log
转载于:https://blog.51cto.com/13404755/2050379