텍스트 파일관련 명령어에 대하여 적어 보겠습니다.
1. cat
텍스트파일 내용을 출력, 또한 > 기호를 사용해 파일을 생성하고 텍스트 파일을 합치는 기능도 있습니다.
사용법
cat [option] 파일명
옵션 |
의 미 |
-A |
-vET를 한꺼번에 쓰는것과 같습니다. 출력되지 않는 모든 문자를 출력해줌 |
-b |
공백있는줄을 제외하고 행번호를 붙여서 텍스트 파일 출력 |
-E |
라인의 끝에 $를 붙여 출력 |
-n |
공백있는줄도 포함해서 행번호를 붙여 텍스트 파일 출력 |
-s |
공백줄이 인접해있을시 하나의 줄로 출력 |
-T |
탭문자를 ^I로 표시 |
-v | 인쇄 불가능문자를 식별할 수 있도록 출력 |
cat 명령 다음에 리다이렉션(>)문자를 넣어서 키보드로 입력한 텍스트를 cho라는 파일을 생성해 저장하는 명령이 첫번째 명령입니다.
텍스트를 입력 후에 Ctrl+d 를 누르시면 텍스트 입력모드가 종료됩니다.
그다음 출력은 < 반대 방향으로 해서 명령을 입력하면 해당 텍스트 파일이 출력이 됩니다.
그리고 A옵션으로 탭문자는 ^I로 표시되었고 각 라인의 끝에 $문자가 붙게 됩니다. 순서대로 T, E 옵션이 적용된겁니다.
그리고 b옵션은 행번호를 붙여주는 옵션입니다. 다른 옵션은 그렇게 어려운내용이 아니니 따로 작성하지 않겠습니다.
2. head
텍스트파일의 첫부분을 보여줍니다, 기본 10줄을 출력해줍니다.
사용법
head [option] 파일명
옵션 |
의 미 |
-c |
뒤에 n이면 바이트, k는 KB, m은 MB를 나타내며 해당 용량까지 출력 |
-n |
뒤에 행수를 붙여 지정된 수만큼 출력 |
-q |
여러개 파일 출력시 파일이름을 출력하지 않는다. |
어려운 옵션이 딱히 없어서 하나만 예시를 들었습니다. 원래는 -n 3으로 쓰는데 줄여서 -3 으로 써도 무방합니다. 저렇게 여러 파일을 출력해 원하는 수의 행을
출력해 줍니다.
3. tail
head명령과 달리 텍스트파일의 끝부분을 보여주는 명령입니다, 기본적으로 10줄을 출력해 줍니다.
사용법
tail [option] 파일명
옵션은 head와 동일합니다. 차이는 위에서부터출력이냐 끝에서부터 출력이냐여서 건너뛰겠습니다.
옵션 |
의 미 |
-f |
파일끝부분에 행이 추가될시 실시간으로 출력한다. |
cho1파일의 끝3줄을 tail명령으로 출력했습니다. f옵션같은경우는 로그파일 실시간 모니터링할때 매우 유용합니다.
4. more
텍스트파일을 화면 단위로 출력해 주는 명령입니다.
사용법
more [option] 파일명
옵션 |
의 미 |
-num |
한 페이지를 num 줄 수로 지정한다. |
more상태 진입후에 명령키를 알아보겠습니다.
키 |
의 미 |
h |
more에 대한 도움말 |
space, z |
다음 페이지를 보여줌 |
Enter |
다음줄을 보여줌 |
d |
다음 반페이지 보여줌 |
b |
이전 페이지를 보여줌 |
f |
페이지 skip 후에 다음페이지 보여줌 |
/word |
해당 word검색 |
= |
현재 줄번호를 보여줌 |
:f |
현재 파일명과 줄번호를 보여줌 |
! |
다른명령을 입력할 수 있는 상태가 됨 |
q |
more명령을 종료함 |
more 명령으로 Grammar라는 텍스트 파일을 열어 보겠습니다.
명령어를 입력하면 해당 화면이 뜹니다.
h를 눌러 도움말을 연 모습입니다.
more명령은 h를 통해서 하나 하나 입력해보면서 이런기능이 있구나 하면서 공부하면 될 거 같습니다.
5. less
more명령을 강화한 명령이라 생각하시면 됩니다. 기능은 more와 비슷하고 커서를 이욯한 이동이 가능합니다.
사용법
less [option] 파일명
명령키 내용입니다.
키 |
의 미 |
h |
less에 대한 도움말 |
space, f Ctrl+f |
다음 페이지를 보여줌 |
Enter,e |
다음줄을 보여줌 |
d |
다음 반페이지 보여줌 |
b |
이전 페이지를 보여줌 |
u |
이전 반페이지 보여줌 |
/word |
해당 word검색(아래로 검색) |
?word |
해당 word검색(위로 검색) |
y |
이전 줄로 이동 |
n |
word검색시에 다음 word가 있는 문자를 찾아 보여줌 |
q |
less명령을 종료함 |
예시는 more와 같이 도움말을 켜놓겠습니다.
more든 less든 편하게 보여줄 수 있는 명령어들입니다. 저는 vi로 다 하긴하지만.. 이런게 있구나 하시면 될거같습니다.
6. grep
텍스트 파일에서 특정 문자열을 찾아주는 명령어 입니다.
사용법
grep [option] 문자열
옵션 |
의 미 |
-b |
문자열과 일치하는 줄의 시작점 출력 |
-c |
문자열과 일치하는 줄의 개수 출력 |
-i |
대소문자 구분없이 검색 |
-n |
줄의 번호와 문자열 같이 출력 |
-v |
문자열과 일치하지 않는 줄 출력 |
-w |
문자열이 한단어로 되있는 것만 출력 |
-x |
문자열이 한줄로 되있을 경우 출력 |
-l |
일치하는 문자열이 있는 파일 이름출력 |
-r |
하위 디렉터리까지 찾아서 출력 |
-E |
하나의 문자열이 아닌 |(파이프)와 연계하여 여러 문자열을 찾음 |
-F |
특수문자, 기호를 그대로 인식하여 출력 |
처음명령어는 i옵션을 써서 대소문자 구분없이 검색하였고 c옵션으로 Python이라는 문자열이 몇개인지 카운트 했습니다. 마지막으로 E옵션을 이용해 python
과 help를 둘다 찾는 명령어를 썼습니다. 다른 옵션들도 비슷한 방식으로 쓰면되고 많이 쓰이는 옵션만 좀 골라서 써보았습니다.
grep할때 문자열을 쓰는 것에도 여러 방법이 있는데 표현하는 방식에 대해서 좀 적어보겠습니다.
* . 같은경우는 한문자가 무조건 존재한다는것을 뜻합니다. p와 n사이에 한글자가 들어가는 문자열을 검색하는 표현식입니다.
예시 하나하나드는게 애매해서 기능설명을 하겠습니다.
*[abc]는 []안에 있는 리스트중 한문자라도 있으면 검색하는 명령어 입니다. c[ho]o 이라고 하면 cho와 coo를 검색하는 것으로 보면됩니다.
숫자같은 경우에는 [0-9]이런식으로 (0에서 9중 하나) 표현하면 되고 [^abc]와 같이 ^로 시작하는 리스트는 그 리스트를 제외하고 검색하는 것입니다.
c[^ho]o 같은경우 cho와 coo를 뺀 다른 cio나 cao같은 것들을 찾아냅니다.
*다음은 '^cho' 와 같이 쓰면 cho로 줄이 시작되는 것을 찾습니다.(따옴표까지 써줘야합니다.)
*'cho$' 는 cho로 줄이 끝나는 경우, '\<cho' cho로 단어가 시작할경우, 'cho\>' cho로 단어가 끝나는 경우 입니다.
*grep 표현식에서 와일드카드(*)는 바로앞문자의 반복이나 아무것도 없는 상태를 찾습니다. 예를 들어 cho*라고 한다면 ch, cho, chooo, choooo와 같이
검색이 됩니다.
텍스트 파일에 관련된 명령어를 알아 보았고 다음에는 vi명령에 대해서 해보겠습니다.
'Linux' 카테고리의 다른 글
9. Linux 기본 명령어(프로세스) (0) | 2016.11.17 |
---|---|
8. Linux 기본 명령어(텍스트 파일)_2 (0) | 2016.11.11 |
6. Linux 기본 명령어(파일관련 ls, mv, cp, rm, touch, file, find) (0) | 2016.11.08 |
5. Linux 기본 명령어(디렉터리 : pwd, cd, mkdir, rmdir) (0) | 2016.11.05 |
4. Linux 기본 명령어(그룹관련 groupadd, gpasswd, nwegrp, groupmod, groupdel) (0) | 2016.10.27 |
댓글