그러면 "a"가 "A"로 변환됩니다.
sed 's/a/A/g' <(echo "foobar")
foobAr
이는 각 모음을 대문자로 시작하는 데 필요한 명령을 제공합니다.
$ cat << EOF
s/a/A/g
s/e/E/g
s/i/I/g
s/o/O/g
s/u/U/g
EOF
내가 하고 싶은 것은 각 모음이 대문자로 표시되도록 첫 번째 예제를 확장하고 두 번째 예제에 표시된 대로 여기 문서를 사용하는 것입니다. 어떤 제안이 있으십니까?
남성:
sed [옵션]... {스크립트만, 다른 스크립트가 없는 경우} [입력 파일]...
-f script-file, --file=script-file 실행할 명령에 script-file의 내용을 추가합니다.
답변1
표준 입력에서 스크립트를 읽어야 함을 나타내기 위해 -
with를 사용할 수 있습니다 .sed -f
$ cat << EOF | sed -f - <(echo foobar)
s/a/A/g
s/e/E/g
s/i/I/g
s/o/O/g
s/u/U/g
EOF
fOObAr
답변2
이 경우 tr
적절한 해결책은 다음과 같습니다.
$ echo foobar | tr [aeiou] [AEIOU]
fOObAr