DINGA DINGA
728x90

아카이브 생성 및 풀기: tar

※ 아카이브: 백업 또는 다른 장소로의 이동을 위해 여러 파일들을 하나로 묶어놓은 것.

 

$ tar -cvf 타르파일 파일+

여러 파일들을 하나의 타르 파일로 묶는다. 보통 확장자로 .tar을 사용한다.

 

$ tar -tvf 타르파일

타르파일의 내용을 확인한다.

 

$ tar -xvf 타르파일

타르파일을 풀어서 원래 파일들을 복원한다.

 

옵션

c(create), v(verbose), x(extract), t(table of contents), f(file)

 

 

 

파일 압축: gzip, compress

$ gzip [옵션] 파일*

파일(들)을 압축해 .gz 파일을 생성한다.

 

옵션

-d: 압축 해제

-l: 압축파일 안에 있는 파일 정보(압축된 크기, 압축률 등)를 출력

-r: 하위 디렉터리까지 모두 압축

-v: 압축 또는 해제시 압축률, 파일명 출력

 

$ compress 파일*

파일(들)을 압축하여 .Z 파일을 생성한다.

 

$ uncompress 파일.Z*

압축된 파일(들)을 복원한다.

 

 

 

후면 작업 확인: jobs

※ 전면 처리 vs 후면 처리

전면 처리: 명령어를 입력하면 명령어가 전면에서 실행되며 명령어 실행이 끝날 때까지 쉘이 기다려 준다.

$ 명령어

후면 처리: 명령어들을 후면에서 처리하고 전면에서는 동시에 여러 작업을 수행할 수 있다.

$ 명령어&

 

$ jobs [%작업번호]

후면에서 실행되고 있는 작업들을 리스트한다. 작업 번호를 명시하면 해당 작업만 리스트한다.

 

 

 

후면 작업을 전면 작업으로 전환: fg

$ fg %작업번호

작업 번호에 해당하는 후면 작업을 전면 작업으로 전환한다.

 

 

 

입출력 재지정

$ 명령어 > 파일

명령어의 표준 출력을 모니터 대신에 파일에 저장한다.

 

$ 명령어 >> 파일

명령어의 표준 출력을 모니터 대신에 파일에 추가한다.

(list1의 내용은 위의 두 줄)

 

$ 명령어 < 파일

명령어의 표준입력을 키보드 대신에 파일에서 받는다.

※ wc: 문서의 행, 단어, 문자 개수 출력

 

$ 명령어 << 단어 ... 단어

명령어의 표준입력을 키보드 대신에 단어와 단어 사이의 내용으로 받는다.

 

$ 명령어 2>& 파일

명령어의 표준오류를 모니터 대신에 파일에 저장한다.

 

※ 명령어의 실행 결과

표준출력(standard output): 정상적인 실행의 출력

표준오류(standard error): 오류 메시지 출력

 

$ 명령어1 | 명령어2

명령어1의 표준출력이 명령어2의 표준입력이 된다. (파이프)

 

 

 

여러 개의 명령어 사용

$ 명령어1; … ; 명령어n

명령어 열 - 나열된 명령어들을 순차적으로 실행한다.

 

$ (명령어1; … ; 명령어n)

명령어 그룹 - 나열된 명령어들을 하나의 그룹으로 묶어 순차적으로 실행한다.

 

$ 명령어1 && 명령어2

조건 명령어 열(1) - 명령어1이 성공적으로 실행되면 명령어2가 실행되고, 그렇지 않으면 명령어2가 실행되지 않는다.

 

$ 명령어1 || 명령어2

조건 명령어 열(2) - 명령어1이 실패하면 명령어2가 실행되고, 그렇지 않으면 명령어2가 실행되지 않는다.

 

 

 

 

파일 이름 대치 & 명령어 대치

파일 이름 대치 - 명령어 실행 전 대표문자가 나타내는 파일 이름들로 먼저 대치하고 실행

* : 임의의 스트링 (빈 스트링 포함)

? : 임의의 한 문자

[..] : 대괄호 사이의 문자 중 하나 (부분범위 사용 가능)

 

명령어 대치 - 명령어를 실행할 때 다른 명령어의 실행 결과를 이용

역따옴표(`)로 에워싼 다른 명령어 부분은 그 명령어의 실행 결과로 대치된 후에 실행

 

따옴표 사용 - 대치 기능 제한

작은따옴표('): 파일명 대치, 변수 대치, 명령어 대치를 모두 제한

큰따옴표("): 파일명 대치만 제한

따옴표 중첩: 바깥 따옴표가 효력을 가짐

728x90