重命名多个文件名(删除文件名的结尾)

时间:2011-10-18 18:02:00

标签: unix

我想将这些文件重命名为(.processed2011 *)

的结尾

所以,基本上,重命名

self_reported_user_activity_1404414367_131826464204632784.csv.processed20111011014111557
self_reported_user_activity_1404539338_131826361077732732.csv.processed20111011021401718 self_reported_user_activity_1404418376_131826222854532675.csv.processed20111011014301356
self_reported_user_activity_1404539858_131826370284032733.csv.processed20111011021431708

self_reported_user_activity_1404414367_131826464204632784.csv self_reported_user_activity_1404539338_131826361077732732.csv self_reported_user_activity_1404418376_131826222854532675.csv self_reported_user_activity_1404539858_131826370284032733.csv


我的'重命名'命令如下(没有正则表达式):

NAME        重命名 - 重命名文件 概要        从文件重命名...

由于

2 个答案:

答案 0 :(得分:1)

我会尝试使用“剪切”命令。像这样:

for f in *
do
  g=`cut -d"." -f2`
  mv $f $g
done

答案 1 :(得分:0)

尝试${string%substring}从字符串后面删除substring的最长匹配项。因此,如果line包含self_...

newline=${line%.*}