ubuntu

ubuntu文件管理怎样批量处理文件

小樊
41
2025-07-11 23:24:37
栏目: 智能运维

在Ubuntu中,您可以使用命令行或图形界面(GUI)来批量处理文件。以下是几种常用的批量处理文件的方法:

批量重命名文件

sudo apt-get install rename

安装完成后,您可以使用以下命令来批量重命名文件:

rename 's/原字符串/新字符串/' *

例如,如果您想将当前目录下所有以 .txt 结尾的文件中的 “old” 替换为 “new”,可以使用:

rename 's/old/new/' *.txt
for file in *.txt; do
    mv "$file" "${file%.txt}_new.txt"
done

这个命令会将当前目录下所有 .txt 文件重命名为在原文件名基础上添加 _new

sudo apt-get install mmv

然后,您可以使用以下命令来批量重命名文件:

mmv "*.txt" "#1_new.txt"

这个命令会将当前目录下所有 .txt 文件重命名为在原文件名基础上添加 _new

批量移动文件

find . -type f -name "*.txt" -exec mv {} /home/user/destination \;

批量删除文件

rm *.txt

要删除多个不同类型的文件,可以使用 {}| 来分隔不同的通配符,如:

rm *.{txt,pdf,docx}
find /home/user/documents -type f -name "*.txt" -exec rm {} \;

批量转换文件编码

#!/bin/bash

# iconv file to utf-8
read -p "Directory or file ? input: d or f. " DF

directory() {
    read -p "Input the directory,like:/home/lem/Music/: " DIR
    [ ! -d "$DIR" ] && echo "DIR not exist" && exit
    [ ! -d "${DIR}utf-8" ] && mkdir "${DIR}utf-8"
    for I in "$DIR"/*; do
        [ ! -f "$I" ] && echo "Missing $I is not a file." && continue
        iconv -f GBK -t utf-8 "$I" "${DIR}utf-8/${I##*/}.utf-8" 2>/dev/null
    done
    echo "Success,new files in ${DIR}utf-8"
}

file() {
    read -p "Input the file:" FILE
    [ ! -f "$FILE" ] && echo "FILE not exist" && continue
    iconv -f GBK -t utf-8 "$FILE" "${FILE}.utf-8" 2>/dev/null
}

case "$DF" in
    d)
        directory
        ;;
    f)
        file
        ;;
    *)
        echo "Input error,please input d or f."
        exit
        ;;
esac

在使用这些命令时,请确保您确实想要执行操作,以免意外删除或修改重要文件。

0
看了该问题的人还看了