2

文字列を大文字から小文字に変換したいと思います。この問題を解決するにはさまざまな方法があることは知っていますが、このコマンドが機能しない理由を理解したいと思います。

echo "aa" | sed 's/'[:upper:]'/'[:lower:]'/g'

文字のクラスを使用するのは間違った方法ですか?

4

3 に答える 3

5

小文字から大文字まで、使用できます

echo "aW123bR" | sed -r 's/[a-z]+/\U&/g'

trコマンドは興味深い代替手段です

echo "aW123bR" | tr '[:lower:]' '[:upper:]'
于 2013-10-26T10:55:11.683 に答える
1

ではsedyコマンドは文字セットのマッピングに使用されます。

sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'

文字クラスではなく、文字のリテラル リストが必要です。

于 2013-10-26T10:41:38.297 に答える