将文件重命名为md5 sum + extension(BASH)

我需要有关bash脚本的帮助。脚本需要将目录中的所有文件重命名为其md5 sum +扩展名。

我在下面找到了bash脚本,但是需要对其进行更改,以便添加扩展名。

md5sum * | sed 's/^\(\w*\)\s*\(.*\)/\2 \1/' | while read LINE; do mv $LINE; done

回答:

这可能对您有用:

# mkdir temp && cd temp && touch file.{a..e}

# ls

file.a file.b file.c file.d file.e

# md5sum * | sed -e 's/\([^ ]*\) \(.*\(\..*\)\)$/mv -v \2 \1\3/' | sh

`file.a' -> `d41d8cd98f00b204e9800998ecf8427e.a'

`file.b' -> `d41d8cd98f00b204e9800998ecf8427e.b'

`file.c' -> `d41d8cd98f00b204e9800998ecf8427e.c'

`file.d' -> `d41d8cd98f00b204e9800998ecf8427e.d'

`file.e' -> `d41d8cd98f00b204e9800998ecf8427e.e'

或者GNU sed可以做的更短:

# md5sum * | sed -e 's/\([^ ]*\) \(.*\(\..*\)\)$/mv -v \2 \1\3/e'

以上是 将文件重命名为md5 sum + extension(BASH) 的全部内容, 来源链接: utcz.com/qa/397673.html

回到顶部