다시 시작하는 리눅스 #15 파일 압축 및 풀기, 내용 출력, 별명붙이기, 파일찾기, 파일문자코드 변경

최동민·2023년 2월 12일
0

Linux

목록 보기
24/25

네트워크로 파일을 전송하거나 한동안 사용하지 않을 파일을 어딘가 저장해둘 때 파일을 압축하면 파일 크기가 줄어서 작업 효율도 좋아지고 컴퓨터 자원도 절약이 가능하다.

gzip, bzip2, xz

gzip, bzip2, xz 명령어는 파일 하나를 압축하는 명령어이다.
압축 풀기는 gunzip, bunzip2, unxz

  • -v
    압축하거나 압축을 풀 때 상세한 정보를 표시한다.

tar

여러 파일과 디렉터리를 tar 형식이라고 부르는 아카이브 파일에 모아서 저장하거나 아카이브 파일을 다시 원래대로 풀기 위해 사용한다.

  • c 옵션
    아카이브를 작성한다는 뜻
    tar cf 파일명지정.tar 파일명 파일명 파일명
  • f 옵션
    그 다음 인수에 지정한 파일명으로 아카이브 파일을 작성한다.
  • x 옵션
    아카이브를 푼다는 뜻
    tar xf 대상.tar

tar 명령어는 파일을 하나로 묶고 푸는 과정과 동시에 압축, 압축 해제도 가능하다. z 옵션을 사용하면 gzip 형식, j 옵션은 bzip2 형식, J 옵션은 xz 형식을 다룬다.
인터넷에서 다운로드한 소스 코드는 이렇게 tar 형식 + gzip 형식 (확장자가 .tar.gz 또는 .tgz) 압축 파일이 많다.
이런 파일을 한꺼번에 압축 해제 및 전개하려면 다음과 같이 입력한다.
tar xzf software.tar.gz

zcat, bzcat, xzcat

압축된 텍스트 파일을 그대로 두고 그 안에 어떤 내용이 들었는지 표시하고 싶을 때 사용한다.
압축 파일을 풀지 않아도 다른 명령어에 압축 해제된 내용을 넘길 수 있다.

ln

파일에 별명을 붙이는(링크를 거는) 명령어이다.
어떤 파일을 다른 파일명으로 참조하거나 다른 디렉터리에서 전체 경로 지정을 하지 않아도 손쉽게 참조하고 싶을 때 사용한다. 여러 사용자가 같은 파일을 공유하고 싶을 때도 편리하다.

ln -s 원본파일 파일명지정
원본파일을 오리지널 파일이라고 하고, 별명으로 작성한 파일을 링크 파일이라고 한다.
-s 옵션은 링크 형식이 심볼릭 링크(기호화된 링크)가 되게끔 하는데, 일반적으로 링크를 건다고 하면 심볼릭 링크를 의미한다.

심볼릭 링크 파일에는 파일명 뒤 @기호가 붙는다.
원본 파일을 참조(링크)하는 심볼릭 링크 파일 수정 시 원본 파일 내용도 함께 변경된다.

링크 형식에는 하드 링크도 있다.
ln 명령어 사용시 아무 옵션을 지정하지 않으면 하드 링크 형식으로 링크를 작성한다.
하드 링크와 심볼릭 링크 차이점은 오리지널 파일을 삭제할 때 알 수 있다. 하드 링크는 오리지널 파일을 소유자가 삭제하더라도 참조하는 링크 파일이 존재하면 파일 실체는 남는다.

find

파일 시스템에서 파일을 검색한다.

  • -name
    파일 이름 지정
  • -print
    화면에 파일 경로 출력

검색 조건에는 갱신 시각, 파일 소유자명도 가능하다.

  • 홈 디렉터리 이하를 대상으로 하루 전에 갱신된 파일을 검색한다면
    find ~ -mtime 1 -print
  • -exec
    검색 결과로 찾은 파일 목록을 다른 명령어의 인수에 지정해서 명령어를 실행할 수 있다.
    find -name testfile -exec /bin/rm {} \;
    검색 결과로 찾은 파일명은 {}로 참조 가능하다. ;(세미콜론)은 실행할 명령어 또는 인수가 끝났다는 것을 뜻하는 기호인데 같은 이름의 셸 명령어가 존재하므로 \(백슬래시)로 이스케이프 한다.

iconv

리눅스와 윈도우 사이 텍스트 파일을 주고받을 때 문자코드를 변경해야 하는 경우 사용.

  • -i
    파일 문자 코드 확인
    file -i testfile.txt
  • -f
    원본 문자 코드 입력
  • -t
    변환할 문자 코드 지정
  • -c
    변환 불가능한 문자를 제외

ex) iconv -c -f UTF-8 -t CP949 testfile.txt > testfile_cp949.txt
해석 - charset이 UTF-8인 testfile.txt을 CP949 로 바꾸어 testfile_cp949.txt 파일로 생성한다.

profile
코드를 두드리면 문이 열린다

0개의 댓글