sed에 관한 질문입니다.
글쓴이: aeronova / 작성시간: 토, 2005/03/12 - 11:07오후
안녕하세요.
sed로 file을 편집하고, 그 결과를 다시 그 파일로 저장하려고 합니다.
근데, 에디팅까지는 문제가 없는데, 리다이렉트로 에디팅 결과를 파일로 저장하려고 하는 부분에서 문제가 생깁니다.
우선 텍스트 파일은 다음과 같구요,
input.in
U = 3900.0,
sed를 이용해서 다음과 같이 했습니다.
sed -e "s/3900.0,/2000.0,/" input.in > input.in
이렇게 하니까 input.in에 에디팅 결과가 저장되는 것이 아니라 그냥 아무 것도 없는 빈 파일로 되어 버립니다.
다음과 같이 해도 마찬가지구요.
cat input.in | sed -e "s/3900.0,/2000.0,/" > input.in
음... 어떻게 해야 할지 조언 좀 부탁드립니다.
Forums:
vi test해서 a='1'b='2'c='3'd='4'
vi test
해서
a='1'
b='2'
c='3'
d='4'
해서 저장하고
# cat test |sed "s/^c=.*/c='6'/" > test
# cat test
a='1'
b='2'
c='6'
d='4'
잘되는군요...^^
-i 옵션을 쓰세요. 다음과 같이 하면 input.in.orig 이 처음
-i 옵션을 쓰세요. 다음과 같이 하면 input.in.orig 이 처음의 내용을
그대로 가지고 있고, sed 필터를 통과한 결과가 원래 파일로 저장됩니다.
----
Let's shut up and code.
"i" option이 있었군요. 이걸 사용하니 해결되었습니다. :)
"i" option이 있었군요. 이걸 사용하니 해결되었습니다. :)
댓글 달기