脚本的进阶与一些基本脚本

1,脚本中用于表示数字大小写和符号为:

-gt(大于)-lt(小于)-ne(不等于)-eq(等于)

格式为 [[空格 ”符号”空格]]

2,测试文件类型的选项

-f(是否为普通文件)-l(是否为链接文件)-d(是否为目录)-e(单独测试文件是否存在)

3,if语句的格式:(其中path代表条件,elif链接多个条件,最后一个条件用else表示)

if path1;then
        elif path2;then
        elif path3;then
        else path4;then
fi

4,while循环语句的格式

while +(条件);do
  (需要执行的操作)
done

其中条件如果一直为真,则这个循环为死循环。

                                                  基本的脚本

1.

写一个脚本

1、创建用户tuser1-tuser9;

2、创建目录/tmp/dir-当前日期;

3、在/tmp/dir-当前日期 目录中创建9个空文件file101-file109

4、将file101的属主改为tuser1,依次类推,一直将file109的属主改为tuser9;

#!/bin/bash
#
basedir=/tmp/dir- date + %Y%m%d
mkdir -p $basedir
for i in {1..9};do
filename=$basedie/file10$i
        touch $filename
        useradd tuser$i
        chown tuser$i $filename
done
~                           

2.

给定4个整数,判断其中的最大值和最小数。并显示出来

#!/bin/bash
#
if [ $# -ne 4 ];then
        echo "error"
        exit
fi
max=$1
min=$1
shift
for i in {2..4} ;do
    if [[ "$1" =~ ^[0-9]+$ ]] ;then
        if [ $max -lt $1 ] ;then
            max=$1
        fi
        if [ $min -gt $1 ] ;then
            min=$1
        fi
    else
        echo "$1 Not a number."
        exit 100
    fi
    shift 
done

echo "Max: $max"
echo "Min: $min"

3.打印99乘法表

#!/bin/bash
#
for ((i=1;i<=9;i++));do
        for((j=1;j<=i;j++));do
                echo -e "$j*$i=$(($i*$j))\t\c"
        done;
        echo
        done;

原创文章,作者:yuanchengren,如若转载,请注明出处:http://www.178linux.com/76710

(0)
yuanchengrenyuanchengren
上一篇 2017-05-22 20:05
下一篇 2017-05-22 20:32

相关推荐

  • Linux系统启动流程简图

    CentOS 系统启动流程: POST 加电自检   外部硬件是否都能存在和是否能正常工作ROM:COMS 芯片上的BIOS 基本输入输出 BOOT Sequence:   引导加载次序,也就磁盘上的MBR,bootloader 按次序查找各引导设备,第一人有引导程序的设备即为本次启动用到的设备。 bootloaderr:引导加载器,程序…

    2017-05-13
  • openssl建立私有CA和申请证书

    实验环境: 虚拟机:VMware® Workstation 12 Pro 主机A:ip为10.1.255.55/16,创建CA并给其他主机提供CA服务 主机B:为httpd服务器,ip为10.1.249.115/16 1、查看openssl的配置文件/etc/pki/tls/openssl.cnf [root@localhost…

    Linux干货 2016-09-23
  • 磁盘管理与文件系统

      关于磁盘与文件系统大致思路:要想对磁盘进行充分利用,必须要对磁盘进行分区,第二步就是要对分区进行高级格式化,也就是在分区上创建文件系统,在此过程中可以对磁盘的各种属性进行自定义。打个比方来说,创建磁盘分区好比刚买来一个毛坯房,还未装修,还不适宜人居住,那么创建文件系统就好比在光秃秃的毛坯房上进行了装修,这样才更适于人居住使用。 要想搞懂磁盘,首…

    Linux干货 2016-08-30
  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@loalhost ~]# (umask 077; cp -r /etc/skel /home/user1) 2、编辑/etc/group文件,…

    Linux干货 2016-09-06
  • grub详解

    grub详解 1、GRUB(Boot Loader): grub:grub 0.x:grub1 legacy传统的版本 grub 1.x:grub2 grub legacy: 第1阶段:mbr 第1.5阶段:mbr之后的扇区中,让第一阶段中的boot loader能识别第二阶段所在分区上的文件系统 第2阶段:磁盘分区(/boot/grub/) 配置文件/et…

    2017-09-03