跳到主要内容

编写个 shell 脚本将/usr/local/test 目录下大于 100K 的文件转移到/tmp 目录下 ?

参考答案:

以下是一个简单的 shell 脚本,它会将 /usr/local/test 目录下所有大于 100K 的文件转移到 /tmp 目录下:

#!/bin/bash

# 源目录
SOURCE_DIR="/usr/local/test"

# 目标目录
TARGET_DIR="/tmp"

# 遍历源目录下的所有文件
for file in "$SOURCE_DIR"/*; do
    # 检查文件是否大于 100K
    if [[ -f "$file" && $(stat -c%s "$file") -gt 102400 ]]; then
        # 转移文件到目标目录
        mv "$file" "$TARGET_DIR"
        echo "文件 $file 已转移到 $TARGET_DIR"
    fi
done

echo "转移完成。"

你可以将上面的脚本保存到一个文件中,比如 move_large_files.sh,然后赋予它执行权限:

chmod +x move_large_files.sh

然后你就可以运行这个脚本来转移文件了:

./move_large_files.sh

这个脚本会遍历 /usr/local/test 目录下的所有文件,检查它们的大小是否大于 100K(即 102400 字节)。如果文件大于 100K,那么它就会被移动到 /tmp 目录下,并且会在终端输出一条消息告诉你哪个文件已经被转移了。最后,当所有文件都被检查和处理完毕后,脚本会输出一条消息告诉你转移已经完成。