
VI편집기
입력모드: i(현재 커서부터 편집)
명령모드: 복사, 붙여넣기, 삭제 등
gg ->파일내용의 첫번째줄로 이동
G ->파일 내용의 마지막줄로 이동
숫자gg ->숫자의 줄로 이동
yy ->한 행(줄) 복사
숫자yy ->숫자행 만큼 복사
p ->복사한 행들 붙여넣기
dd ->한 행 삭제
숫자dd ->숫자행 만큼 삭제
u ->실행한 내용 취소
컨트롤+r ->실행취소한 내용 되돌리기
슬래시(/)로 검색모드 진입 (<-> ?search search 문자열을 위로검색)
n(아래)과 N(위)으로 검색된 문자열 이동
ex) /search search문자열을 아래로 검색
콜론(:)으로 실행모드 진입
:w+엔터 ->저장
:q+엔터 ->편집모드종료
:wq! 저장후편집종료
:set nu ->몇번째 행인지 숫자로 좌측에 표시
:set ic ->검색 시 대소문자 구별x(<-> :set noic )
:r FILL_NAME ->다른파일의 내용을 현재위치에 추가
실행모드에서 문자열 및 행 조작
$ 행 마지막
^ 행 처음
% 파일 전체 범위
g 라인내 전부
& 찾은 패턴 그대로 다시 넣고 싶을 때
2,4 m 44 ->2~4번 행을 지우고 44번 행으로 이동
26 co 22 ->26번 행을 카피하여 22번 행에 붙여 넣기
%s/^aaa//g ->모든 aaa 단어를 삭제
g/test/d ->test패턴 들어있는 라인삭제
g/^$/d ->빈줄 삭제
152d 14 ->154라인부터 14줄 삭제
주석(#)처리 :%s/^[^#]/#&/g (<--->) 주석(#)해제 :%s/^[#]//g
sed
-i: 파일 내용 직접 수정
ex) sed -i '%s/test/test2/g' text.log (text.log 파일 전체에서 test를 찾아 test2로 변경해라)
-r: 정규표현식사용가능(+, ?, [], {n, .. n+1},[^],^,$,| 등사용 가능)
ex) sed -r '%s/(ab)+/test/g' test.log(test.log 파일 전체에서 ab가 한번이상 반복되는 패턴을 찾아 test문자열로 치환하라)
-e: sed 명령어를 연속으로 실행 가능
sed -e '%s/Network//g' -e '%s/network//g' text.log (text.log 파일 전체에서 Network,network 문자열 패턴을 전부 삭제해라)