私の質問は、すべてのテキストを大文字から小文字に、またはその逆に変換するにはどうすればよいですか?それはすべての文字の大文字小文字を変更することです。 sed
で行う必要があります どういうわけか交換。
承認された回答:
これがsed
の簡単な方法です :
$ echo qWeRtY | sed -e 'y/abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz/'
QwErTy
またはGNUsed
を使用したより短い方法 、ロケールに小文字の<->大文字の変換が存在する任意の文字を操作する:
$ echo qWeRtY | sed -E 's/([[:lower:]])|([[:upper:]])/U1L2/g'
QwErTy
次のような別のツールを使用できる場合:
perl
(ASCII文字に限定):
$ echo qWeRtY | perl -pe 'y/[a-z][A-Z]/[A-Z][a-z]/'
QwErTy
perl
(より一般的に):
$ echo 'αΒγ' | perl -Mopen=locale -pe 's/(p{Ll})|(p{Lu})/uc($1).lc($2)/ge'
ΑβΓ