0

我想不通,需要帮助完成以下任务:

现有的 Linux 程序 foo2bar 将单个 foo 文件的名称作为其唯一参数,并将其转换为适当命名的 bar 文件。提供一个脚本,该脚本在执行时将对当前目录中的所有 foo 文件运行 foo2bar。

4

3 回答 3

2

如果我理解正确:

#!/bin/sh

for f in *.foo; do
  foo2bar "$f"
done 
于 2012-04-07T10:48:49.040 回答
0

您可以使用 "for r in find . -name "*foo*"; do mv $r $r"-" ; done" 重命名当前目录中的 foo 文件。

 # ls
 1.foo  2.foo  3.foo  foo  foo.1  foo.2  foo.3

 # for r in `find . -name "*foo*"` ; do mv $r $r"-" ; done

 # ls
 1.foo-  2.foo-  3.foo-  foo-  foo.1-  foo.2-  foo.3- 

谢谢。

于 2013-10-21T07:02:41.527 回答
0

我想这个rename命令可能是你的朋友。

IE

rename foo bar *foo*

将更改所有文件名的footo 。barfoo

于 2013-10-21T07:10:31.620 回答