shell编程及自动化学习资料

shell的学习笔记:

1. 如何自定义变量?

  • 定义一个name变量:
name="hahaha"
echo $name
  • 重复定义变量:
aa=123
aa="$aa"456
echo= $aa    \\变量可以重复定义,但是定义的最后一个就是最终结果
  • 查看和删除变量:
set
unset
  • 编写脚本
vim ping.sh
#!/bin/bash
ip=192.168.190.180
ping -c1 $ip &> /dev/null &&  echo "$ip" pass || echo "$ip"down

&& 前面的命名成功,执行后面的命令
| | 前面的命令失败,执行后面的命令

  • read变量名
read 变量名
read -p "你的名字是什么:"  name

2.注意事项3个引号:

" "这个是弱引,在里面的空格会视为符号
’ '这个是强引,在里面的全部都视为符号
` 这个是飘号,在里面的优先执行

3.变量运算:

  • 方法一:expr
  \*  乘        /  除       %取余
#!/bin/bash
read -p "第一门考多少?" number1
read -p "第二门考多少?" number2
echo -n "总成绩是多?"
expr "$number1" + "$number2"
  • 方法二:¥(())
echo $(($number1+$number2))

sum=$((1+2));echo sum
3

;的含义是执行完前面的再执行后面的

  • 方法三:let
let num=$number1+$number2 ; echo $num
let i++ ; echo $i

编写一个创建用户的脚本?

vim useradd.sh

#!/bin/bash
read -p "请告诉我你的名字"  name
read -p "请告诉我你的d密码" passwd
useradd $name
echo "$passwd" | passwd --stdin $name   &> /dev/null
echo "你的名字是"$name",你的密码是"$passwd""

自己试想一下如何一键配置yum仓库

shell的判断,if语句?

  • 数值比较
[整数1  比较符   整数2]
-gt大于     -lt小于        -eq等于
-ne不等于   -ge大于等于    -le小于等于

测试长度:echo ${#aaa}
测试语法 [ ${#aaa} -gt 3 ] ; echo $?

  • if语句
#!/bin/bash
read -p "请输入你的密码" ps
if  [   ${#ps} -lt    7    ]
then
echo "你的密码太短了"
else
echo "你的密码真长"
fi

小技巧用VIM编辑的时候查看错没错就看有没有黄色字体就知道了

  • 文件测试

-e FILE - 如果文件存在并且是文件,则为True,而不考虑类型(节点、目录、套接字等)。
-f仅仅用来检查文件是常规文件(不是目录或设备)
-d允许你测试一个文件是否时目录

#!/bin/bash
read -p "请输入你要备份的文件目录"  dir
if [ -d /${dir}   ]
then
echo "文件已经存在"
else
echo "文件不存在,正在创建文件"
touch ${dir}
fi

字符串比较

=,等于
!=, 不等于
-n判断字符串长度不为0

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值