Linux 第四节(shell脚本,IF,do,for)
Shell脚本
1.批处理式:
2.交互式:
脚本声明 #!/bin/bash
脚本注释 #fakba;kb
脚本命令 ls pwd
bash test.sh //执行test.sh脚本
echo "$0" //脚本名称
echo "$#,$" //总共接收到了几个参数,这些参数分别是什么
echo "$1,$3,$5" //分别是我们接收到的第1 3 5参数
[ -f /etc/fstab ] // 判断文件是否存在
echo $? //查看文件是否存在,1表示不存在,0表示存在
[ -d /dev ] //判断目录是否存在或者是否是一个目录
echo $? //查看目录是否存在或者是否是一个目录,1表示不存在,0表示存在
&& //若前面成功,则执行后面的,逻辑与
[ -d /etc ] && echo "ok" //判断ETC目录存在就在屏幕显示 ok
|| //若前面失败,则执行后面的,逻辑或
[ $user = root ] || echo "不是他,不是他" //如果当前登录用户不是root ,则显示不是他
! //取反值,逻辑非
[ ! $USER = root ] //判断当前登录用户不是root用户
[ `free -m | grep Mem: | awk '{print $4}‘` -lt 1024 ] && echo "Buzu" || echo "chongzu"
//提取以兆为单位的内存空闲值,小于1024就显示不足,大于1024显示充足
[ -z $HAHA ] //判断这个变量是否被使用过
echo $? //查看判断结果
if [ -e /madia/haha ] //判断这个文件是否存在
then
mkdir /madia/haha //新建一个文件
fi
ping -c 3 -i 0.2 -w 3 $1 &> /dev/null
//ping 3次,间隔0.2秒,最长响映时间3秒,将所有输出信息重定向到一个黑洞文件
if [ $? -eq 0 ]
then
echo "host $1 is on-line“
else
echo "host $1 is off-line"
fi
read -p "Enter:" GRADE //读取用户输入的信息
if [ $GRADE -ge 85 ] && [ $GRADE -le 100 ] ; then
echo "Excellent"
elif [ $GRADE -ge 70 ] && [ $GRADE -le 84 ];then
echo "Pass"
else
echo "Failure"
fi
read -p "Enter:“ PASSWD
for UNAME in `cat users.txt`
do
id $UNAME &> /dev/null
if [ $? -eq 0 ]
then
echo "$UNAME,Already exist"
else
useradd $UNAME &> /dev/null
echo "$PASSWD" | passwd --stdin $UNAME &> /dev/null //
fi
done
//检测网络在线
for IP int `cat ip.txt`
do
ping -c 3 -i 0.2 -w 3 $1 &> /dev/null
if [ $? -eq 0 ] ; then
echo "$IP is on-line"
else
echo "$IP is off-line"
fi
done
Linux 第四节(shell脚本,IF,do,for)的更多相关文章
- PHP面试系列 之Linux(四)---- Shell脚本
一.脚本执行方式 1.先赋予权限 chmod +x test.sh; 再直接执行 ./test.sh 2.调用解释器使得脚本执行 3.使用source命令 source test.sh 二.编写基础 ...
- 自学Linux命令行与Shell脚本之路
自学Linux命令行与Shell脚本之路[第一回]:初识Linux 1.1 自学Linux Shell1.1-Linux初识 1.2 自学Linux Shell1.2-Linux目录结构 1.3 ...
- 《Linux命令行与shell脚本编程大全 第3版》创建实用的脚本---11
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- 《Linux命令行与shell脚本编程大全 第3版》高级Shell脚本编程---47
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- 《Linux命令行与shell脚本编程大全 第3版》Shell脚本编程基础---57
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---57
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---56
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---55
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---54
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---53
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
随机推荐
- spring-in-action_day02
开发web应用 # 开发Spring web应用,最基本的需要构建以下组件: 1.pojo类(从数据库获取数据) 2.pringmvc控制器 3.视图模板(页面) ##第一步 构建pojo类 p ...
- python爬虫学习——元组,字典(2.14日博客补)
元组 ''' tup1 = () #创建一个空的元组 print(type(tup1)) #tup2 = (50) #不是元组,python把括号当成了表达式的一部分,即数学运算的括号 #tup2 = ...
- Java 如何通过JDBC 操作数据库
JDBC 是Java 数据库连接,即 Java DataBase Connectivity.JDBC 可让Java 通过程序操作关系型数据库,可基于驱动程序实现与数据库的连接与操作.JDBC 有统一的 ...
- 很奇怪CSDN的审核
https://www.cnblogs.com/lup9304/p/15310753.html https://www.cnblogs.com/lup9304/p/15328809.html 很奇怪C ...
- react中Hooks的理解和用法
一.Hooks是什么? Hook 是 React 16.8 的新增特性.它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性 至于为什么引入hook,官方给出的动机是 ...
- Distinct Paths
代码 #include<cstdio> using namespace std; const int N = 20 , mod = 1e9 + 7 , K = 10; int f[N + ...
- RocketMQ 5.0 vs 4.9.X 图解架构对比
本文作者:李伟,Apache RocketMQ Committer,RocketMQ Python客户端项目Owner ,Apache Doris Contributor,腾讯云数据库开发工程师. 0 ...
- 初学 Socket.io
概念 Socket.io 是一个支持客户端和服务器之间的低延迟.双向和基于事件的通信的库,除了支持 JavaScript 以外,还支持 Java.Python.Golang. Socket.io 构建 ...
- Sequelize.js + Express.js 开发 API
什么是 Sequelize 我们知道 Web 应用开发中的 Web 后端开发一般都是 Java.Python.ASP.NET 等语言.十年前,Node.js 的出现使得原本仅限于运行在浏览器中的 Ja ...
- ABAP SORT 递减/递增
排序 DESCENDING(递减) / ASCENDING(递增)只作用前字段 SORT LT_VBAK BY VBELN DESCENDING(递减). SORT LT_VBAK BY VBE ...