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)的更多相关文章

  1. PHP面试系列 之Linux(四)---- Shell脚本

    一.脚本执行方式 1.先赋予权限 chmod +x test.sh; 再直接执行 ./test.sh 2.调用解释器使得脚本执行 3.使用source命令 source test.sh 二.编写基础 ...

  2. 自学Linux命令行与Shell脚本之路

    自学Linux命令行与Shell脚本之路[第一回]:初识Linux   1.1 自学Linux Shell1.1-Linux初识 1.2 自学Linux Shell1.2-Linux目录结构 1.3  ...

  3. 《Linux命令行与shell脚本编程大全 第3版》创建实用的脚本---11

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  4. 《Linux命令行与shell脚本编程大全 第3版》高级Shell脚本编程---47

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  5. 《Linux命令行与shell脚本编程大全 第3版》Shell脚本编程基础---57

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  6. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---57

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  7. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---56

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  8. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---55

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  9. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---54

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  10. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---53

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

随机推荐

  1. 快速入门API Explorer

    摘要:华为云API Explorer为开发者提供一站式API解决方案统一平台,集成华为云服务所有开放 API,支持全量快速检索.可视化调试.帮助文档.代码示例等能力,帮助开发者快速查找.学习API和使 ...

  2. shin-monitor源码分析

    在经过两年多的线上沉淀后,将监控代码重新用 TypeScript 编写,删除冗余逻辑,正式开源. 根据 shin-monitor 的目录结构可知,源码集中在 src 目录中.关于监控系统的迭代过程,可 ...

  3. IDEA启动报错 NoClassDefFound

    很仔细的看了项目,发现jar包都齐全,没有问题,找了几天,都没有发现什么问题. 最后,想到可能是启动配置的问题,内存的问题 加了上面的配置-Xss2058k,设定程序启动时占用内存大小,正常启动

  4. Rpc-实现Zookeeper注册中心

    1.前言 本文章是笔主在声哥的手写RPC框架的学习下,对注册中心的一个拓展.因为声哥某些部分没有保留拓展性,所以本文章的项目与声哥的工程有部分区别,核心内容在Curator的注册发现与注销,思想看准即 ...

  5. WAVE音频文件格式及其64位扩展格式的简要介绍

    正文 关于 WAVE 文件格式,网上有不少介绍,但关于WAVE 64位扩展格式的介绍却是几乎没有. 所以本文的目的是简要介绍标准的 WAVE 格式,以及两种主要的扩展格式. 文中所有代码都用C语言来描 ...

  6. Kali Linux Web 渗透测试秘籍 中文版

    第一章 配置 Kali Linux 简介 在第一章中,我们会涉及如何准备我们的 Kali 以便能够遵循这本书中的秘籍,并使用虚拟机建立带有存在漏洞的 Web 应用的实验室. 1.1 升级和更新 Kal ...

  7. Python自动合并Word文件同时添加分页符的方法

      本文介绍基于Python,实现对多个Word文档加以自动合并,并在每次合并时按要求增添一个分页符的方法.   现有多个Word文档文件,需将其按名称顺序合并为一个新的Word文件,且需保证每一次合 ...

  8. 【KAWAKO】TVM-在ubuntu服务器上的安装

    目录 下载源码 安装依赖库 修改config.cmake文件 编译 安装python库 添加tophub 简单验证 官方的安装教程在这里 下载源码 从Download Page中下载下来的源码是0.8 ...

  9. Distinct Paths

    代码 #include<cstdio> using namespace std; const int N = 20 , mod = 1e9 + 7 , K = 10; int f[N + ...

  10. 个人博客系统Typecho情侣主题模板Cupid

    个人博客系统Typecho情侣主题模板Cupid 转载:https://zcjun.com/3175.html