컴퓨터활용/유닉스

sed를 이용한 문자열 치환

멜번초이 2006. 10. 11. 23:56
다음 예제는 *.c 파일 속에 있는 $1 문자열을 $2 문자열로 바꾼다.

ls_lst=`ls *.c`
for ls_one in ${ls_lst};  do
    echo '=[ '$ls_one' ]'

    sed -e "s%$1%$2%" $ls_one > $ls_one.temp
    sed -e "s%$1%$2%" $ls_one.temp > $ls_one
    rm -f $ls_one.temp
done

echo ' E N D'