un_armed_pawn Asked: 2020-07-30 11:40:53 +0800 CST2020-07-30 11:40:53 +0800 CST 2020-07-30 11:40:53 +0800 CST 一次重命名多个文件 772 我有一堆使用 ffmpeg 转换为 mp3 文件的 wav 文件。 现在 mp3 文件都命名为file.wav.mp3. 如何.wav在保留文件名的其余部分的同时删除后缀?我想一次在整个目录上执行此操作。 command-line rename 8 个回答 Voted Best Answer steeldriver 2020-07-30T11:59:48+08:002020-07-30T11:59:48+08:00 带壳循环,去掉最短的“双点后缀” for f in *.wav.mp3; do echo mv "$f" "${f%.*.*}.mp3"; done 或(我个人最喜欢这样的事情)使用mmvfrom 包mmv mmv -n '*.wav.mp3' '#1.mp3' 一旦您对他们在做正确的事情感到高兴,请酌情删除echo或。-n waltinator 2020-07-30T11:51:38+08:002020-07-30T11:51:38+08:00 阅读man rename并执行以下操作: rename 's/.wav.mp3/.mp3/' *.wav.mp3 你可能必须sudo apt install rename,首先。 Mr Felix U 2020-07-31T10:12:37+08:002020-07-31T10:12:37+08:00 在 Ubuntu 的文件浏览器中,您可以选择多个文件并根据模式重命名它们,只需点击F2或右键单击并选择Rename。 在这里,我替换x为_by_. 在您的情况下,您可以.wav用空字符串替换。 turbulence 2020-07-30T12:10:28+08:002020-07-30T12:10:28+08:00 如您所见,有多种方法可以实现这一目标。使用 basename 命令的另一种方法如下所示: for file in ./*.wav.mp3 do mv "$file" "$(basename "$file" .wav.mp3)".mp3 done Puspam 2020-07-30T11:49:50+08:002020-07-30T11:49:50+08:00 如果您有所有以.wav.mp3格式命名的文件,请使用以下命令: for i in *.wav.mp3; do echo $i; mv "$i" "${i::-8}.mp3"; done cde 2020-07-31T00:36:36+08:002020-07-31T00:36:36+08:00 在包含.wav.mp3文件的目录中时: for i in *.wav.mp3; do mv "$i" "$(echo $i | sed s/.wav//g)"; done 也就是说,您也许可以对您的 ffmpeg 命令使用相同的名称,因此您以后不必重命名它们。 allo 2020-08-02T03:34:56+08:002020-08-02T03:34:56+08:00 我只想添加一个工具提示: 用于此类任务的真正好程序是emv。 您将其作为 `emv .wav.mp3运行,它会打开一个编辑器。然后,您可以使用搜索和替换。然后保存文件并关闭编辑器,程序会重命名您的文件。 这特别方便,当您知道如何使用高级编辑器(vim例如 baponkar 2020-08-02T12:53:34+08:002020-08-02T12:53:34+08:00 #!/bin/bash for i in * do #Define the string value text="$i" # Set .wav as the delimiter IFS='.wav.' #Read the split words into an array based on space delimiter read -a strarr <<< "$text" mv "$i" "${strarr[0]).mp3" #changing input file name done
带壳循环,去掉最短的“双点后缀”
或(我个人最喜欢这样的事情)使用
mmv
from 包mmv
一旦您对他们在做正确的事情感到高兴,请酌情删除
echo
或。-n
阅读
man rename
并执行以下操作:你可能必须
sudo apt install rename
,首先。在 Ubuntu 的文件浏览器中,您可以选择多个文件并根据模式重命名它们,只需点击F2或右键单击并选择Rename。
在这里,我替换
x
为_by_
. 在您的情况下,您可以.wav
用空字符串替换。如您所见,有多种方法可以实现这一目标。使用 basename 命令的另一种方法如下所示:
如果您有所有以
.wav.mp3
格式命名的文件,请使用以下命令:在包含
.wav.mp3
文件的目录中时:也就是说,您也许可以对您的 ffmpeg 命令使用相同的名称,因此您以后不必重命名它们。
我只想添加一个工具提示:
用于此类任务的真正好程序是emv。
您将其作为 `emv .wav.mp3运行,它会打开一个编辑器。然后,您可以使用搜索和替换。然后保存文件并关闭编辑器,程序会重命名您的文件。
这特别方便,当您知道如何使用高级编辑器(
vim
例如