实验二 shell编程

93次阅读
没有评论

共计 943 个字符,预计需要花费 3 分钟才能阅读完成。

提醒:本文最后更新于 2025-03-26 21:55,文中所关联的信息可能已发生改变,请知悉!

将 /var/log 目录下所有的日志文件全自动打包进行备份

#!/bin/bash

now_date=$(date +"%Y%m%d")
# echo $now_date
output_dir="/opt/backup/"$now_date
# echo $output_dir
if [! -d $output_dir]; then
    sudo mkdir -p $output_dir
    echo "sudo mkdir ${output_dir} done"
fi

log_dir="/var/log"
# file_list()
i=0
function read_dir(){
for file in `ls $1` 
do
    if [-d $1"/"$file]; then
        read_dir $1"/"$file
    elif ["${file##*.}" = "log" ]; then
        # echo $1"/"$file
        file_list[i]=$1"/"$file
        i=$i+1
    fi
done
}

read_dir $log_dir
# echo ${file_list[@]}
tar -cvf $output_dir"/log.tar" ${file_list[@]}

实验二 shell编程

实验二 shell 编程

利用 shell 脚本编写 1 +2+…+100

实验要求:分别利用 for、while 和 until

sh 脚本

#!/bin/bash

echo " 请选择:"
echo "1.for"
echo "2.while"
echo "3.until"
read -p " 请输入一个序号:" id
echo "==================="

echo " 下面进行循环累加 " 
read -p " 请输入循环次数:" n
echo "==================="

case $id in
    1)
        echo " 您选择了 for 循环 "
        sum=0
        for ((i=1;i<=n;i++))
        do
            sum=$(($sum+$i))
        done
        echo " 结果为 $sum"
        ;;
    2)
        echo " 您选择了 while 循环 "
        sum=0
        i=1
        while [$i -le $n]
        do
            sum=$(($sum+$i))
            let i++
        done
        echo " 结果为 $sum"
        ;;
    3)
        echo " 您选择了 until 循环 "
        sum=0
        i=1
        until [$i -gt $n]
        do
            sum=$(($sum+$i))
            let i++
        done
        echo " 结果为 $sum"
        ;;
esac

实验效果

实验二 shell 编程

实验二 shell 编程

实验二 shell 编程

正文完
 0
icvuln
版权声明:本站原创文章,由 icvuln 于2024-11-16发表,共计943字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)