私は次のようないくつかのコマンドを試してきました
dd if=*.xml of=*.xml conv=lcase
フォルダ内のすべてのxmlファイルのすべてのコンテンツを小文字にまとめます。フォルダのファイル名はすでに小文字です。実際のコンテンツもすべて小文字に変更しようとしています。
誰かがこれを行うためのコマンドを投稿したり、私が間違っていることを教えてもらえますか?ありがとう!
私は次のようないくつかのコマンドを試してきました
dd if=*.xml of=*.xml conv=lcase
フォルダ内のすべてのxmlファイルのすべてのコンテンツを小文字にまとめます。フォルダのファイル名はすでに小文字です。実際のコンテンツもすべて小文字に変更しようとしています。
誰かがこれを行うためのコマンドを投稿したり、私が間違っていることを教えてもらえますか?ありがとう!
ファイルをその場で編集するために使用sed
して、ループを作成する必要がなくなります。
sed -ri 's/.+/\L\0/' *.xml
for i in *.xml; do tr A-Z a-z < $i > tmp && mv tmp $i; done
ファイル名に特殊な文字 (空白、改行、制御文字など) が含まれている場合は、「$i」を引用する必要があるかもしれませんが、名前はすべて小文字であると言っているので、それは必要ないと思います。
私は行きます:
sed -ie 's/\(.*\)/\L\1/' *.xml
質問に ssh のタグを付けたようです。指定していませんが、これは ssh コマンドの最後にこのコマンドを実行したいということですか? その場合、アスタリスクはリモートで解釈されるはずなので、次のようにエスケープする必要があります。
sed -ie 's/\(.*\)/\L\1/' \*.xml