shell
执行方法
- 方法一:. 脚本文件路径 chmod +x first.sh ./1.sh
- 方法二:sh 脚本文件路径 sh 1.sh
- 方法三:source 脚本文件路径 source 1.sh
格式
脚本声明
注释信息
可执行语句
例
wc -l 1.txt //显示文件名
wc -l 0< 1.txt //不显示文件名(0只是序号可以不加)
cat 0< 1.txt 1> 3.txt //读取1.txt的内容写入3.txt
useradd zhang3 //创建用户zhang3
echo “123” > /tmp/pass.txt //写入123到/tmp/pass.txt
passwd --stdin zhang3 < pass.txt //修改用户zhang3的密码,来自读取pass.txt
awk命令
$2代表第二个字段
- 参数: -F 可以指定符号( . : ; 等等)
变量
定义变量
- 变量名=变量值
a=123
调用变量
变量名开头加$ echo $a 显示123
- 参数
双引号:允许通过$符号引用其他变量值 b=”111 $a”
单引号:禁止引用其他变量值,$视为普通字符 c=‘test $b’
反撇号:命令替换,提取命令执行后的输出结果 d=`which useradd`
- 全局变量(export)
- 运算(expr)
expr 变量1 运算符 变量2 [运算符 变量3] ...
加 + 减 - 乘 \* 除 / 求模(取余)运算 %
- 特殊变量
预定义变量
$#:命令行中位置变量的个数
$*:所有位置变量的内容
$?:上一条命令执行后返回的状态,当返回状态值为0时表示执行正常,非0值表示执行异常或出错
$0:当前执行的进程/程序名
小脚本
利用脚本进行算法
[root@localhost ~]# vim abc.sh
添加;
#!/bin/bash
a=5
b=10
sum=`expr $a + $b`
echo "$a + $b = $sum"
[root@localhost ~]# sh abc.sh
5 + 10 = 15
利用脚本修改IP地址
编辑 vim IP.sh
#!/bin/bash
read -p "输入网卡接口名称:" ens
read -p "输入IP地址:" ip
read -p "输入子网掩码:" mask
read -p "输入网关地址:" route
read -p "输入首选DNS地址:" dns
ifc="/etc/sysconfig/network-scripts/ifcfg-"
echo "DEVICE=$ens" > $ifc$ens
echo "TYPE=Ethernet" >> $ifc$ens
echo "BOOTPROTO=static" >> $ifc$ens
echo "ONBOOT=yes" >> $ifc$ens
echo "IPADDR=$ip" >> $ifc$ens
echo "NETMASK=$mask" >> $ifc$ens
echo "GATEWAY=$route" >> $ifc$ens
echo "DNS1=$dns" >> $ifc$ens
systemctl restart network
接下来执行 IP.sh 即可快速修改IP地址
Linux学习文章Linux基本操作
今天也要加油啊,为了自己的梦,你有多努力,就有多幸运
大家有什么疑问欢迎私信或者评论,作者都会为大家一一解答的