티스토리 뷰

cat

  • 파일의 내용을 데이터 등을 이용해서 열지 않고 터미널에 출력하는 기능. 알고 있으면 매우 유용한 기능이다.

      cat <filename>
    • 물론 데이터를 사용하여 파일의 내용을 확인할 수 있지만, 개인적으로는 에디터를 사용하여 파일의 내용을 확인하면 에디터를 닫았을 때, 파일의 내용이 터미널에 남아있지 않아서 많은 내용을 복사하거나 확인해야할 때는 불편함이 존재하는데, 이럴 때 cat 명령어를 사용하면 상당히 편리하게 작업을 진행할 수 있다.
  • 두번째 기능은 결합 기능이다. 사실 cat 명령어는 결합하다는 뜻의 concatenates 에서 생겼다. 이러한 어원에 맞게 파일을 결합하여 출력하는 기능도 있다.

      cat <file1> <file2> ... <file n> 

    여러개의 파일의 내용을 합쳐서 터미널에 출력할 수 있다.

less

cat 명령어를 사용하여 파일의 내용을 확인하려고 할 때, 확인하려는 파일이 굉장히 긴 내용의 파일이라면 출력을 하더라도 필요한 부분을 알아보기 힘들다. 이럴때 less를 사용하면 보다 효율적으로 파일의 원하는 내용을 확인할 수 있다.

바로 파일의 내용을 대화식으로 나눠서 보여주고 스크롤이 가능하고, 페이지 단위로 넘길 수 있고, 검색도 가능하다. 그리고 파일의 가장 처음 내용부터 보여준다. 다만 명령어를 입력한 창이 아닌 새창으로 보이기 때문에 나왔을 때, 파일의 내용은 터미널에 남아있지 않다.

less <filename>
  • space or f 로 다음 페이지로 가기
  • b로 이전 페이지로 가기
  • Enter or Down arrow 로 한줄씩 내려가기
  • / 로 검색하기

tac and rev

tac

  • cat 명령어와 스펠링이 거꾸로 되어있다. 실제로 하는 기능도 cat 기능과 반대라고 생각하면 된다. cat과 마찬가지로 파일을 결합하고 출력하는데, 순서가 반대다. 파일의 마지막 줄부터 출력해준다.
  • 데이터의 순서를 바꿀 때? 정도 말고는 많이 사용되는 명령어는 아닌 듯 하다.

rev

  • tac 또는 cat 처럼 파일을 출력한다.
  • 다른점으로는 파일의 각 줄 안에서 순서를 반대로 바꿔준다. 즉, 수평적으로 뒤집는다.
    • tac 은 파일의 위 아래를 변경했다면 rev는 파일의 줄 순서는 그대로인데 각 줄 안에서 문자의 순서가 반전되는 것이다.

head and tail

  • 파일의 각 머리와 꼬리로 파일의 시작부분과 끝 부분을 보거나 관련된 작업을 할 때 사용된다.
  • 두 명령어 모두 default 값은 --line 또는 -n 옵션으로 변경할 수 있다.
  • 혹은 더 짧게 -3 과 같이 숫자만 바로 입력하여 사용할 수 있다.
head --line 5 <file>
tail --line 5 <file>
head -n 5 <file>
tail -n 5 <file>
head -5 <file>
tail -5 <file>
  • -c 옵션은 바이트 수를 의미한다. 각각 파일의 앞, 뒤부터 입력한 숫자만큼의 바이트의 문자만 출력한다.

      head -c 8 <file>
      tail -c 8 <file>
  • -f or --follow

    • 이 옵션은 tail에만 존재하는 옵션이다.

    • 해당 옵션을 부여했을 시, 리스닝 상태로 대기하고 적용한 파일에 내용이 추가되었을 경우 실시간으로 수정한 파일 내용을 보여준다. 이를 테스트하기 위해서는 터미널 창을 하나 더 띄워서 테스트하면 된다.

      tail -f <file>
    • 이는 데이터 로그나 로그 파일 등 로그를 모니터링 할 때 유용한 명령어이다.

    • 한쪽 터미널에는 -f 옵션으로 로그 파일을 리스닝 상태로 두고, 다른 터미널에서는 해당 로그에 영향을 미칠 수 있는 작업을 하면 로그를 실시간으로 확인할 수 있기 때문이다.

wc

  • wcword count의 약자로 특정 파일의 줄 수나 단어 수 혹은 바이트 수를 알려준다.
  • 컴퓨터에 얼마나 많은 패턴이 일치하는지, 특정 문자열을 포함하는 파일의 수가 몇개인지 등 확인할 때 유용하다.
  • 단독적으로 사용하기보다는 파이프라인에서 보다 유용하게 사용이 가능하다.
  • 명령어를 입력하면 출력 결과로 네 컬럼의 숫자와 파일이름이 출력된다. 컬럼의 head는 출력되지 않기 때문에 옵션을 함께 사용하여 혼동이 없게 사용하는 것이 좋다.
    • 첫번째 컬럼: 파일 안의 줄 수
      • -l 옵션으로 단일 확인이 가능하다.
    • 두번째 컬럼: 단어의 수
      • -w 옵션으로 단일 확인이 가능하다.
    • 세번째 컬럼: 바이트 수
      • -c 옵션으로 단일 확인이 가능하다.
wc <file name>
wc -l <file name> # 줄 수
wc -w <file name> # 단어의 수
wc -c <file name> # 바이트 수
wc -m <file name> # 문자 수

sort

  • 기본적으로 정렬을 하는 명령어이다.

      sort <filename>
    • 조금 주의해야할 점은 기본적으로 다른 프로그래밍 언어에서 sort를 사용하면 대문자 → 소문자 순으로 정렬이 되는데, 이 sort는 대소문자가 함께 정렬되며 소문자가 앞으로 정렬된다. e.g) aAbBcC
  • -r 옵션으로 반대로 정렬할 수 있다.

  • -n 옵션으로 숫자를 정렬할 수 있다.

    • 숫자 정렬 시 해당 옵션을 사용해 주지 않으면 기본적으로 생각하는 결과와는 다르게 숫자 자체의 크기를 비교하지 않고 각 자릿수를 비교하여 정렬을 하니 주의해야한다.
    • e.g) 0.5 13 199 49 5.0
      • 각 자릿수부터 정렬하기 때문에 가장 앞의 자릿수가 1인게 먼저 정렬되고 가장 앞의 숫자가 큰 5가 마지막으로 정렬되었다.
  • -u 중복값을 제거하고 고유값만 정렬한다.

  • -k 옵션을 사용하여 필드(컬럼)을 기준으로 정렬할 수 있다.

    • 여러개의 필드가 있을 경우 그냥 정렬을 하면 원하는 대로 컬럼의 정렬이 이루어지지 않을 수 있다. 따라서 원하는 필드를 지정하여 해당 필드를 key로 정렬을 할 수 있도록 해주는 옵션이다.
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함