我在一个名为:
的目录中有一组文件OneThing-x.extension
OneThing-y.extension
OneThing-z.extension
我使用什么UNIX命令(find,cp,xargs,sed?)将这些命令复制到
AnotherThing-x.extension
AnotherThing-y.extension
AnotherThing-z.extension
使得x - > copy-> x和y - > copy - > ÿ
我有一个开始的命令的一部分,它选择了文件,但我被困在那里。
修改 显然,我想保留原始版本和副本版本,因此重命名对我来说并不是很有用。
答案 0 :(得分:3)
怎么样:
$ touch a1.a a2.a a3.a
$ ls
a1.a a2.a a3.a
$ for a in a*.a ; do cp $a $(echo $a | sed 's/^a/b/') ; done
$ ls
a1.a a2.a a3.a b1.a b2.a b3.a
答案 1 :(得分:1)
我粗略的解决方案就像:
for FIL in OneThing*; do NFIL=`echo $FIL|sed 's/OneThing/AnotherThing/'`; cp "$FIL" "$NFIL"; done;
答案 2 :(得分:1)
for FIL in OneThing*
do
NFIL=`echo $FIL | sed 's/OneThing/AnotherThing/'`
cp "$FIL" "$NFIL"
done
答案 3 :(得分:0)
$ rename 's/OneThing/AnotherThing/' *.extension
答案 4 :(得分:0)
你也可以使用mmv:
$ mmv -c "OneThing*" "AnotherThing#1"
或
$ mmv -c "OneThing-*.extension" "AnotherThing-#1.extension"