我有一个Centos服务器。
在SSH中,我使用以下命令在txt中下载了多个mp4文件:
wget -i urls.txt
现在,我在目录中有一个mp4文件列表。问题是那些mp4文件被命名为:
65464.mp4?md5=sdokj7SRuM-OKatFmdCJJg&expires=1570102642
45421.mp4?md5=sdokj56SRuM-OKatFmdCJJg&expires=157010277842
etc...
如何删除?以及此目录中所有文件之后的所有内容(例如?md5=sdokj7SRuM-OKatFmdCJJg&expires=1570102642
),因此它将文件名更改为:
65464.mp4
45421.mp4
etc...
谢谢。
解决方案将取决于您的CentOS系统正在运行或具有什么外壳。如果您正在运行bash
,则可以执行以下操作:
for x in * ; do
mv $x ${x%%\?*}
done
这使用bash
string variable manipulation技术。
另一个可能的解决方案,仍然取决于外壳功能:
for x in * ; do
mv $x $(echo $x | sed "s/\?.*//")
done