아카이브 생성 및 풀기: 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가 실행되지 않는다.
파일 이름 대치 & 명령어 대치
파일 이름 대치 - 명령어 실행 전 대표문자가 나타내는 파일 이름들로 먼저 대치하고 실행
* : 임의의 스트링 (빈 스트링 포함)
? : 임의의 한 문자
[..] : 대괄호 사이의 문자 중 하나 (부분범위 사용 가능)
명령어 대치 - 명령어를 실행할 때 다른 명령어의 실행 결과를 이용
역따옴표(`)로 에워싼 다른 명령어 부분은 그 명령어의 실행 결과로 대치된 후에 실행
따옴표 사용 - 대치 기능 제한
작은따옴표('): 파일명 대치, 변수 대치, 명령어 대치를 모두 제한
큰따옴표("): 파일명 대치만 제한
따옴표 중첩: 바깥 따옴표가 효력을 가짐
'SYSTEM > 개념 정리' 카테고리의 다른 글
[Dream hack] Linux Exploitation & Mitigation Part 1 中 Return Address Overwrite & NOP Sled (0) | 2021.03.04 |
---|---|
[Dream hack] Memory Corruption - C (I) 中 스택 버퍼 오버플로우 (0) | 2021.03.04 |
BOF 정리 (2) (0) | 2021.02.24 |
BOF 정리 (1) (0) | 2021.02.21 |
리눅스 기초 명령어 (0) | 2021.02.15 |