[210606 TIL] Linux

Choi Rim·2021년 6월 6일
0

Linux

목록 보기
6/10
post-thumbnail

split

파일 내용을 잘라주는 명령어, 파일 내용을 자른 내용의 파일이 새로 생성됨, 원본 파일은 그대로 존재

  • split [파일이름] : 파일을 1000라인으로 잘라줌
    ex) split [파일이름] => 두 파일로 쪼개짐 [xaa][xab]

  • split -d [파일이름] : 파일이름 숫자로 자동 생성
    ex) [x00][x01]

  • split -d -a [지정할 숫자] [파일이름] : 파일 이름 숫자 자릿수 지정
    ex) split -d -a 3 [파일이름] => [x000][x001]
    split -d -a 4 [파일이름] => [x0000][x0001]

  • split -d --additional-suffix=.[확장자명] [파일이름]
    ex) split -d -additional-suffix.txt [파일이름] => [x00.txt][x01.txt]

  • split -d --additional-suffix=.[확장자명] [파일 이름][지정할 이름]
    ex)split -d --additional-suffix=.txt [파일이름] backup_ => [backup_00.txt][backup_01.txt]

  • split -l [줄 수] [파일명] : 자를 줄 수 지정

  • split -C [크기] [파일명] : 파일 크기 지정해 자르기

  • split -n [개수] [파일명] : 파일을 개수 별로 균등하게 나누기
    ex) split -n 5 [파일명] => 5개의 파일 생성됨 [xaa][xab] [xac][xad] [xae]

  • split --numeric-suffixes=[숫자] [파일명] : 파일명을 숫자부터 시작
    ex) split --numeric-suffixes=20 [파일명] => [x20][x21] 생성

echo

문자열을 컴퓨터에 출력하는 명령어

  • echo [문자열]
    ex) echo "안녕하세요" => 안녕하세요
  • echo -e [문자열] : 문자열안의 백슬래시 이스케이프 해석
    ex) echo -e "안녕 \b나는 \b최혜림이야" => 안녕나는최혜림이야
  • echo -n [문자열] : 줄바꿈 생략
    ex) echo -n "안녕하세요"
    안녕하세요hyerim@hyerim-15U340-LT2CK:~/d9$

yes

인터럽트 걸릴 때까지 문자 무한 출력
ex) yes "안녕하세요" => "안녕하세요" 문자 무한 출력

ls

list directory contents에서 유래된 명령어로 해당 디렉토리 내에 있는 디렉토리 및 파일을 화면에 출력한다.

  • ls -l : 자세한 디렉토리 및 파일 정보 출력
  • ls -a : 숨김 파일 까지 모두 출력
  • ls -al : 자세한 파일 정보와 숨김 파일 모두 출력
  • ls -A : .. 파일 제외하고 모두 출력
  • ls -i : 파일의 고유한 번호(index number, inode) 출력
  • ls -S : 사이즈 별로 정렬해서 출력
  • ls -r : reverse, 작은 사이즈 순으로 정렬해 출력

dircolors

디렉토리와 파일 출력할 때 색 다르게 하는 명령어

paste

파일 라인 합쳐서 출력

hyerim@hyerim-15U340-LT2CK:~/d11$ cat name
Julia
Ann
John
Annie
Peter
hyerim@hyerim-15U340-LT2CK:~/d11$ cat eng
10
20
30
40
50

이렇게 이름이 저장되어 있는 name과 영어 성적이 저장되어 있는 eng을 paste 명령어를 이용해 합칠 수 있다.

hyerim@hyerim-15U340-LT2CK:~/d11$ paste name eng
Julia	10
Ann	20
John	30
Annie	40
Peter	50
hyerim@hyerim-15U340-LT2CK:~/d11$ paste name eng > e1
hyerim@hyerim-15U340-LT2CK:~/d11$ paste name kor > k1
hyerim@hyerim-15U340-LT2CK:~/d11$ paste k1 e1 > score
hyerim@hyerim-15U340-LT2CK:~/d11$ cat score
Julia	100	Julia	10
Ann	90	Ann	20
John	80	John	30
Annie	70	Annie	40
Peter	60	Peter	50

영어 성적이 저장되어 있는 eng와 이름 파일 name을 합쳐주고 국어 성적이 저장되어 있는 kor와 이름 파일 name을 합친 후 각 각 저장하고 paste을 이용해 score에 묶어 저장하였다.

  • paste -s : 옆으로 정렬
    hyerim@hyerim-15U340-LT2CK:~/d11$ paste -s name
    Julia	Ann	John	Annie	Peter
    

join

  • 필드 (field) - 열 (colmn)
    레코드(record) - 행 (row)

공통 필드 찾아 합쳐주는 명령어

위에서 만든 성적표에서 공통된 name을 중복되지 않게 묶어 줄 수 있다.

hyerim@hyerim-15U340-LT2CK:~/d11$ join k1 e1
Julia 100 10
Ann 90 20
John 80 30
Annie 70 40
Peter 60 50

join을 이용하면 공통된 요소로 파일이 묶어진다.

<참고>

profile
https://rimi0108.github.io/

0개의 댓글