sed s 는 같은줄에서 치환하는걸로 알고있는데요.. 그럼 만약 텍스트가
cat dog cat dog
이렇게있을때는... 어떻게해야되는건가요? ㅜㅜ 제가 다른줄에 있는것 까지 변경해야하는건지 몰랐는데.. 그래야되더군요ㅠㅠ 이건따로 코드를 짜서 만들어야하는건지..ㅜㅜ
awk '{ while (match($0, /StringA|StringB/)) { printf "%s", substr($0, 1, RSTART-1); $0 = substr($0, RSTART); printf "%s", /^StringA/ ? "StringB" : "StringA"; $0 = substr($0, 1+RLENGTH) } print }' file.txt
여기서 awk의 결과를.. 같은 파일인 file.txt 여기에 저장하고싶을땐 혹시 어떻게해야되나요? 다른파일로는 >file2.txt로 하면되는데. 같은 파일에 하고싶습니다.
이런식으로 해결했습니다.
awk '{
while (match($0, /StringA|StringB/)) {
printf "%s", substr($0, 1, RSTART-1);
$0 = substr($0, RSTART);
printf "%s", /^StringA/ ? "StringB" : "StringA";
$0 = substr($0, 1+RLENGTH)
}
print
}' file.txt
여기서 awk의 결과를.. 같은 파일인 file.txt 여기에 저장하고싶을땐 혹시 어떻게해야되나요?
다른파일로는 >file2.txt로 하면되는데. 같은 파일에 하고싶습니다.