08 shell脚本--001练习

1、判断/etc/inittab文件是否大于100行,如果大于,则显示”/etc/inittab is a big file.”否者显示”/etc/inittab is a small file.”
    #!/bin/bash
    $Line=` wc -l /etc/inittab | cut -d ‘ ‘ -f1` --------------->17
    if [ $Line -gt 100 ];then
        echo "/etc/inittab is a big file."
    else
        echo "/etc/inittab is a small file."
    fi
2、给定一个用户,来判断这个用户是什么用户,如果是管理员用户,则显示“该用户为管理员”,否则显示“该用户为普通用户”
    #!/bin/bash
     a=`id -u root`------------>0(0为管理员id)(500-65535)给一般使用者使用
    if [ $a -eq 0 ];then
        echo "该用户为管理员"
    esle
        echo "该用户为普通用户"
    fi
3、判断某个文件是否存在
    #!/bin/bash
    $a=`ls 2019-08-10.http.log`
    if [ $a -eq 0 ];then
        echo "文件存在"
    else
        echo "文件不存在"
    fi
4、判断当前系统上是否有用户的默认shell程序是否为bash程序,如果有,就显示有多个这类用户,否则就显示没有这类用户;【并且显示出那些用户是bash】
    #!/bin/bash
    $bash=`grep ‘bash$‘ /etc/passwd | wc -l`---------------->1
    if [ $bash -eq 0 ];then
        echo "没有这类用户"
    else
        echo "$bash"
    fi
5、写出一个脚本程序,给定一个文件,比如:/etc/inittab a、判断这个文件中是否有空白行? b、如果有,则显示其空白行的行号,否则显示没有空白行
    #!/bin/bash
    $a=`cat /etc/inittab | cut -d ‘#‘ -f2 |grep ‘^$‘ |wc -l`------------>7
    if [ $a -eq 0 ];then
        echo "没有空行"
    else
        echo “有空行$a”
    fi
6、写一个脚本程序,给定一个用户,判断其UID与GID是否一样,如果一样,就显示该用户为“good guy”,否则显示为“bad guy”
    #!/bin/bash
    #[[email protected] ~]# useradd wx
    #[[email protected] ~]# id -u wx
    #1000
    $a=`id -u wx`
    #[[email protected] ~]# id -g wx
    #1000
    $b=`id -g wx`------------------>1000和1000
    if [ $a -eq $b ];then
        echo "good guy."
    else
        echo "bad guy."
    fi
7、写一个脚本程序,给定一个用户,获取其密码警告期限;然后判断用户最近一次修改密码的时间距离今天是否已经小于警告期限;
    #!/bin/bash

8、判断命令历史中历史命令的总条目是否大于1000,如果大于,则显示“some command will gone”,否则显示OK
    #!/bin/bash
    $a=`history |wc -l`
    if [ $a -gt 1000 ];then
        echo "some command will gone."
    else
        echo "OK"
    if
9、给定一个文件,如果是普通文件,就显示出来,如果是目录文件,也显示出来,否则就显示“无法识别”
    #!/bin/bash
    $a=`-`
    $b=`d`
    $c=`ll yum.conf|cut -d ‘ ‘ -f1 |awk -F ‘‘ ‘{print $1}‘`
    if [ $c -eq $a ];then
        echo "普通文件"
    elif [ $c -eq $b ];then
        echo "目录文件"
    else
        echo "无法识别"
    fi    
10、写一个脚本,能接受一个参数(文件路径),判断这个参数如果是一个存在的文件就显示“ok”,否则显示“No such file”
    #!/bin/bash
    $a=` ll /etc/inittab|wc -l`----------------->1
    if [ $a -ge 1 ];then
        echo "ok"
    else
        echo "NO such file"
    fi
11、写一个脚本,给脚本传递两个参数,显示两则之和和两者之积
    #!/bin/bash
    $a=2
    $b=3
    if [ $sum -eq ‘+‘];then
        echo "两者之和为:$[$a+$b]"
    else
        echo "两者之积为:$[$a*$b]"
    fi

原文地址:https://www.cnblogs.com/wx00/p/11313076.html

时间: 2024-12-22 21:29:02

08 shell脚本--001练习的相关文章

Linux 第九天: (08月11日) Linux Shell脚本编程

Shell脚本是包含一些命令或声明, 并符合一定格式的文本文件格式要求 运行shebang机制#!/bin/bash bash -n /path/to/some_script  检测脚本中的语法错误bash -x /path/to/some_script  调试执行 bash中变量的种类本地变量 生效范围 当前shell进程, 对当前外进程, 包括子shell无效环境变量 生效范围 当前shell进程和子进程局部变量 生效范围 当前shell进程中某代码片段 通常指函数位置变量 $1 $2 让脚

linux shell 脚本攻略001

shell 脚本通常是以#!/bin/bash开始的文本文件.#!被置于解释器路径之前. 以bash为解释器进行解释所有命令行的命令. 有两种运行脚本的方式,一种是将脚本作为sh的命令行参数,另一种是将脚本作为具有可执行权限的可执行文件.将脚本作为命令行参数的运行方式如下: sh aa.sh :假定脚本文件就在当前路径下.否则写全路径执行.也可以通过修改脚本文件的权限来执行脚本chmod a+x aa.sh ./aa.sh就可以执行. 脚本中使用#代表注释. 终端打印: echo是用于终端打印的

08 bash特性--shell脚本编程入门

shell脚本编程入门 编程语言介绍 变量 变量:就是给计算机内存中的一段空间命令,命令的这个空间就叫做变量,而再给这个空间放入值的过程,我们就叫做给变量赋值: bash下的变量的内部数据类型:(这是数据在内存中存放的格式,默认情况下,shell程序下一班都不会去申明数据类型,所以,我们的bash程序默认数据为字符类型) 字符型(string) 数值:整型(int).浮点型 布尔类型:真假 同时,脚本一般在执行的时候都会自动启动一个子shell进程,命令行中的启动的脚本会继承当前shell环境变

shell脚本基础知识

一.什么是shell 简单点理解,就是系统跟计算机硬件交互时使用的中间介质,它只是系统的一个工具.实际上,在shell和计算机硬件之间还有一层东西那就是系统内核了.打个比方,如果把计算机硬件比作一个人的躯体,而系统内核则是人的大脑,至于shell,把它比作人的五官似乎更加贴切些.回到计算机上来,用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,然后shell再传输给系统内核,接着内核再去支配计算机硬件去执行各种操作. 试验环境为linux发布版本(Redhat/CentOS)

shell 脚本-符号-基础语法

为了便于识别  建议 以.sh 结尾 shell脚本 可以放上所有的命令行的指令(源于bash) shell脚本 是 解释型语言      c/c++ 是编译型语言 下面用到的 shell代码sh_1.sh #!/bin/bash cd ../ ls pwd 解释型脚本的执行过程: script.sh 是文本文件,根本没有代码段和 _start  函数 , exec 怎么执行. 解释: Shell会fork 一个子进程并调用 exec执行 ./script.sh这个程序,exec 系统调用应该把

第三部分shell编程3(shell脚本2)

7. if 判断一些特殊用法 if [ -z $a ] 这个表示当变量a的值为空时会怎么样if grep -q '123' 1.txt; then 表示如果1.txt中含有'123'的行时会怎么样if [ ! -e file ]; then 表示文件不存在时会怎么样if (($a<1)); then …等同于 if [ $a -lt 1 ]; then… [ ] 中不能使用<,>,==,!=,>=,<=这样的符号 if [ ! $a -gt 0 ];then... 代表不大于

Linux Shell脚本攻略(1.10)

1.10 获取.设置日期和延时 很多应用程序需要以不同的格式打印日期.设置日期和时间.根据日期和时间执行某项操作.延时通常用于在程序执行过程中提供一段等待时间(比如1秒).同样的,我们也能够一多种格式打印日期,或者在命令行中设置日期.在类Unix系统中,日期被存储为一个整数,其大小为自世界标准时间起所流逝的秒数.这种计时方式称为纪元时或Unix时间. 1.10.1 获取.设置时间 以下的程序给出了多种用法: #!/bin/bash start=$(date +%s) #获取纪元时间 date #

小白日记7:kali渗透测试之主动信息收集-发现(一)--二层发现:arping/shell脚本,Netdiscover,scapy

主动信息收集 被动信息收集可能不准确,可以用主动信息收集验证 特点:直接与目标系统交互通信,无法避免留下访问痕迹 解决方法:1.使用受控的第三方电脑进行探测,使用代理 (做好被封杀的准备) 2.伪造大量的来源IP进行探测,进行噪声迷惑,淹没真是的探测流量 扫描流程:发送不同的探测,根据返回结果判断目标状态[IP层->端口层->服务层] 发现 识别活着的主机,发现潜在的被攻击目标,输出结果为IP地址列表. 二层发现 数据电路层,使用ARP协议 使用场景:已经取得一台主机,进入内网,对内网进行渗透

Shell脚本编程

编程语言发展史:机器语言-->汇编语言-->高级语言 编程语言的分类:(1)根据运行方式 静态语言:编译型语言,事先转换成可执行格式 C.C++.JAVA.C#  编译运行:源代码-->编译器 (编译)-->可执行程序文件 动态语言:解释型语言,边解释边执行 shell.Python..Perl.ASP.PHP  解释运行:源代码-->运行时启动解释器,由解释器边解释边运行 (2)根据其编程过程中功能的实现是调用库还是调用外部程序文件来分      shell脚本编程:利用系