2012-04-07 8 views
0

を書き、次のタスクとが必要です:、私はそれを把握することができなかったのbashリネームスクリプト

唯一の引数として単一のfooファイルの名前を取り、適切に変換foo2bar既存のLinuxプログラム名前付きバーファイル。実行時にカレントディレクトリ内のすべてのfooファイルに対してfoo2barを実行するスクリプトを提供します。

+0

関連の質問:[複数のパターンに基づいてファイルの名前を変更するより良い方法](http://stackoverflow.com/a/25597051/2654678) –

答えて

2

私は右理解している場合:

あなたが使用することができます
#!/bin/sh 

for f in *.foo; do 
    foo2bar "$f" 
done 
0

; - ";行わ" "find . -name "*foo*"におけるRのMV $器R $ rを行う" カレントディレクトリに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- 

ありがとうございます。

0

私はrenameコマンドがあなたの友人かもしれないと思います。

すなわち

rename foo bar *foo* 

はすべてfooそれらでfooとファイル名のbarに変更されます。

関連する問題