Search

Sed

아래처럼 취환할때 유용하게 사용하는 명령어이다.
sed -i "s|public_a|$public_a|g" cluster.yaml
Shell
복사
Example
sed 's/정규표현식/대체문구/flag'
Shell
복사
1~2번째 줄을 삭제(delete) 하고 나머지를 출력
cat << EOF > data abcdefg # 1 hijklmn # 2 opqrstu vwxyz== EOF cat data | sed '1,2d' sed '1,2d' data # Result opqrstu vwxyz==
Shell
복사
모든 a 문자를 제거하고 나머지를 출력
cat << EOF > data abcdefg hijklmn opqrstu vwxyz== EOF cat data | sed 's/a//g' # Result bcdefg hijklmn opqrstu vwxyz==
Shell
복사
문자열에서 o, a, h, r, u 문자가 나오면, 그 문자를 대문자로 변환
\u : 뒤에 오는 문자(또는 \0 등 대체 문자열)를 대문자로 변환
\0 : 전체 매칭된 문자열(그룹 포함)을 의미
cat << EOF > data abcdefg hijklmn opqrstu vwxyz== EOF cat data | sed 's/\([oahru]\)/\u\0/g' # Result Abcdefg Hijklmn OpqRstU vwxyz==
Shell
복사
각 문자를 하나씩 잡아서 뒤에 공백 추가
cat << EOF > data abcdefg hijklmn opqrstu vwxyz== EOF cat data | sed 's/\(.\)/\0 /g' # Result a b c d e f g h i j k l m n o p q r s t u v w x y z = =
Shell
복사
각 2글자씩 그룹으로 잡아 뒤에 공백 추가
cat << EOF > data abcdefg hijklmn opqrstu vwxyz== EOF cat data | sed 's/\(.\{2\}\)/\0 /g' # Result ab cd ef g hi jk lm n op qr st u vw xy z= =
Shell
복사