0

ディレクトリで「 abc.111 」の形式のファイルを見つけて、シェルスクリプトで「 abc.222 」という名前に変更する必要があります。パターン置換はどういうわけか失敗します。ここで何が欠けていますか?

#!/bin/sh

find . -name \*abc\* | while read FILES
do
        newfile =  ${FILES/111/222} #Replace 111 by 222
        mv $FILES $newfile
done

エラー:/temp.sh:不正な置換

4

1 に答える 1

2

あなたは代用/bin/shをサポートしていません。${var//}などの別のシェルを試してください/bin/bash

これを修正すると、スペースが機能しないことがわかります。

newfile =  ${FILES/111/222}

の両側にスペースを入れずにこの行を記述する必要があります=

于 2012-08-10T21:50:30.263 に答える