본문 바로가기

Develop/Linux

리눅스 기본 명령어(2)

파일의 압축과 묶기


(1) 파일 압축


리눅스에서 가장 많이 보게 되는 압축 파일은 확장명이 'bz2' 또는 'gz' 이다.


예전에는 주로 확장명 'gz' 을 사용했으나, 최근에는 압축률이 더 좋은 'bz2' 를 더 많이 사용한다.


 bzip2

  확장명 bz2로 압축을 하거나 풀어준다.


 # bzip2 파일명                 --> "파일명" 을 압축 파일인 "파일명.bz2"으로 만들어 줌

 # bzip2 -d "파일명.bz2"    --> "파일명.bz2" 압축 파일을 일반 파일은 "파일명"으로 만들어 줌 (d-"Decompress")


 gzip

 확장명 gz 로 압축을 하거나 풀어준다.


 # gzip 파일명                    --> "파일명"을 압축파일인 "파일명.gz"로 만들어 줌

 # gzip -d "파일명.gz"         --> "파일명.gz" 압축파일을 일반파일인 "파일명"으로 만들어 줌


(2) 파일 묶기


 tar

 확장명 tar로 묶음 파일을 만들어 주거나 묶음을 풀어 준다.


 c                                       --> 새로운 묶음

 x                                       --> 묶인 파일을 풀어줌

 t                                        --> 묶음을 풀기 전에 묶인 경로를 보여줌


 [ 옵션 ]

 f (필수) - 묶음 파일명 지정    --> 원래 tar는 tape 장치 백업이 기본

 v - visual                           --> 파일이 묶이거나 풀리는 과정을 보여줌

 z - tar + gzip

 j - tar + bzip2


[ 사용 예 ]

 # tar cvf xinetd.tar /etc/xinetd.d/            --> 묶기

 # tar cvfz xinetd.tar.gz /etc/xinetd.d/      --> 묶기 + gzip 압축

 # tar cvfj xinetd.tar.bz2 /etc/xinetd.d/     --> 묶기 + bzip2 압축

 # tar tvf xinetd.tar                                  --> 파일 확인

 # tar xvf xinetd.tar                                 --> tar 풀기

 # tar xvfz xinetd.tar.gz                           --> gzip 압축 해제 + tar 풀기

 # tar xvfj xinetd.tar.bz2                           --> bzip2 압축 해제 + tar 풀기


파일 위치 검색


리눅스에서 특정 파일의 위치를 검색하는 명령어


 find [경로] [옵션] [조건] [action]

 [옵션] -name, -user(소유자), -newer(전, 후), -perm(허가권), -size(크기)

 [action] -print(디폴트), -exec(외부명령 실행)


 [ 사용 예 ]

 # find /etc -name "*.conf"        --> /etc 디렉토리 하위에 확장명이 ".conf"인 파일 검색

 # find /home -user fedora        --> /home 디렉토리 하위에 소유자가 "fedora"인 파일 검색

 # find ~ -perm 644                   --> 현재 사용자의 홈디렉토리 하위에 허가권이 644인 파일 검색

 # find /bin -size +10k -size -100k        --> /bin 디렉토리 하위에 파일 크기가 10KB~100KB인 파일 검색


 # find ~ -size 0k -exec ls -l { } \;     --> 현재 사용자의 홈 디렉토리 하위에 파일 크기가 0인 파일의 목록을 상세히 출력

 # find /home -name "*.swp" -exec rm { } \;   --> /home 디렉토리 하위에 확장명이 *.swp 인 파일을 삭제


 




파이프, 필터, 리다이렉션


 파이프(pipe)

  두 개의 프로그램을 연결해 주는 연결통로의 의미

 "| " 문자를 사용함.

 [사용 예]

 # ls -l /etc | more        --> "ls -l /etc" 명령을 입력하면 파일이 너무 많아서,

                                        페이지가 넘어가므로 한 개 페이지씩 보겠다는 의미


 필터(filter)

 필요한 것만 걸러 주는 명령어

 grep, tail, wc, sort 등

 주로 파이프와 같이 사용된다.

 [사용 예]

 # ps -ef | grep bash     --> "ps -ef"는 모든 프로세스 번호를 출력하므로,

                                         "bash" 라는 글자가 들어간 프로세스만 출력


 리다이렉션(re-direction)

 표준 입출력의 방향을 바꿔 줌

 표준 입력은 키보드, 표준 출력은 모니터이지만 이를 파일로 처리하고 싶을 때 주로 사용

 [사용 예]

 # ls -l > aa.lst             --> "ls -l"의 결과를 화면에 출력하지 않고, aa.lst라는 파일에 쓰도록 한다.

                                        단, aa.lst 파일이 기존에 있으면 덮어쓴다(overwrite).

 # ls -l >> aa.lst           --> 위와 동일하다. 단, aa.lst 파일이 기존에 있으면 기존의 내용에 이어서 쓴다(append).

 # sort < aa.lst             --> aa.lst 파일을 정렬해서 화면에 출력한다.

 # sort < aa.lst > bb.lst             --> aa.lst 파일을 정령해서, bb.lst 파일에 쓴다.


시스템 설정(system-config-xxx)


 □ 초기 부팅 설정 - system-config-boot

 □ 방화벽 설정 - system-config-firewall      --> 외부에 서비스를 하기 위해서 포트를 열어 줄 때 사용.

 □ 네트워크 설정 - system-config-network

 □ 서비스의 가동/중지 설정 - system-config-services

 □ 네임 서버 설정 - system-config-bind

 □ 웹 서버 설정 - system-config-httpd

 □ NFS 서버 설정 - system-config-nfs

 □ 삼바 서버 설정 - system-config-samba

 □ FTP 서버 설정 - system-config-vsftpd



'Develop > Linux' 카테고리의 다른 글

리눅스 기본 명령어 (1)  (0) 2012.08.01