【Linux实践】实验九:Shell流程控制语句


实验九:Shell流程控制语句

实验目的:
  1. 掌握条件判断语句,如if语句、case语句。
  2. 掌握循环控制语句,如for语句、while语句、until语句。
实验内容:
  1. 编写一个Shell脚本,利用for循环把当前目录下的所有*.c文件复制到指定的目录中,并显示复制后该目录内按文件大小排序的目录文件清单。
  2. 使用until语句创建一个Shell程序,其功能为计算1-10的平方。
操作步骤:
1. 复制*.c文件并排序

Shell脚本内容

#!/bin/bash
# 定义目标目录
TARGET_DIR="/path/to/destination"

# 创建目标目录如果它不存在
mkdir -p "$TARGET_DIR"

# 遍历当前目录下的所有.c文件
for FILE in *.c; do
    # 复制文件到目标目录
    cp "$FILE" "$TARGET_DIR"
done

# 显示目标目录内按文件大小排序的文件清单
echo "文件清单(按大小排序):"
ls -lSh "$TARGET_DIR" | sort -h

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

执行步骤

  1. 将上述脚本保存为copy_and_sort.sh
  2. 赋予执行权限:chmod +x copy_and_sort.sh
  3. 执行脚本:./copy_and_sort.sh

描述

  • mkdir -p "$TARGET_DIR": 创建目标目录(如果不存在)。
  • for FILE in *.c; do ... done: 遍历当前目录下的所有.c文件。
  • cp "$FILE" "$TARGET_DIR": 将每个.c文件复制到目标目录。
  • ls -lSh "$TARGET_DIR" | sort -h: 显示目标目录内按文件大小排序的文件清单。
2. 计算1-10的平方

Shell脚本内容

#!/bin/bash
# 使用until循环计算1-10的平方

i=1
until [ $i -gt 10 ]; do
    echo "$i 的平方是 $(( $i * $i ))"
    ((i++))
done

在这里插入图片描述

执行步骤

  1. 将上述脚本保存为squares.sh
  2. 赋予执行权限:chmod +x squares.sh
  3. 执行脚本:./squares.sh

描述

  • i=1: 初始化计数器变量i为1。
  • until [ $i -gt 10 ]: 使用until循环直到i大于10。
  • echo "$i 的平方是 $(( $i * $i ))": 打印i的平方。
  • ((i++)): i的值每次循环增加1。
实验内容命令描述
复制*.c文件并排序mkdir -p "$TARGET_DIR"创建目标目录(如果不存在)
for FILE in *.c; do ... done遍历当前目录下的所有.c文件
cp "$FILE" "$TARGET_DIR"将每个.c文件复制到目标目录
`ls -lSh “$TARGET_DIR”sort -h`
计算1-10的平方i=1初始化计数器变量i为1
until [ $i -gt 10 ]使用until循环直到i大于10
echo "$i 的平方是 $(( $i * $i ))"打印i的平方
((i++))i的值每次循环增加1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浪里个浪的1024

你的鼓励将是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值