Linux

쉘 필터 - 3장

빼이 2020. 10. 21. 08:36
반응형

★ 파이프 라인에서 tar 명령 사용

tar 명령은 Linux 시스템에서 파일을 패키징하는 데 가장 일반적으로 사용되는 프로그램입니다.


예제 1

tar 명령을 사용하여 디렉토리의 전체 구조를 복사 할 수 있습니다.

  • [root] $ tar cf- / home / backhyung | (cd / backup /; tar xf-)

예제 2

네트워크를 통해 디렉토리의 전체 구조를 복사합니다.

  • [root] $ tar cf- / home / backhyung | ssh remote_host "(cd / backup /; tar xf-)"

예제 3

네트워크에서 디렉토리의 전체 구조를 압축하고 복사합니다.

  • [root] $ tar czf- / home / backhyung | ssh remote_host "(cd / backup /; tar xzf-)"

예제 4

tar 아카이브 파일의 크기 (바이트)를 확인하십시오.

  • [root] $ cd /; tar cf-etc | wc -c 
  • 215040

예제 5

tar.gz 파일로 압축 된 tar 아카이브 파일의 크기를 확인하십시오.

  • [root] $ tar CZF-etc.tar | WC -c 
  • 58006

예제 6

tar.bz2 파일로 압축 된 tar 아카이브 파일의 크기를 확인하십시오.

  • [root] $ tar cjf-etc.tar | wc -c 
  • 50708


★ 파이프 라인에서 head 명령 사용

때로는 명령의 전체 출력이 필요하지 않고 처음 몇 줄의 출력 만 필요할 수도 있습니다. 이때 출력의 처음 몇 줄만 인쇄하는 head 명령을 사용할 수 있습니다. 기본 출력 줄 수는 10 줄입니다.


예제 1

ls 명령에서 출력의 처음 10 줄을 표시합니다.

[root] $ ls / usr / bin | head 

addftinfo 

afmtodit 

apropos 

arch 

ash 

awk 

base64 

basename 

bash 

bashbug


예제 2

ls 명령의 처음 5 줄을 표시합니다.

[root] $ ls / | head -n 5 

bin 

cygdrive 

Cygwin.bat 

Cygwin.ico 

Cygwin-Terminal.ico



★ 파이프 라인에서 uniq 명령 사용

uniq 명령은 중복 된 줄을보고하거나 삭제하는 데 사용됩니다. 파이프 라인에서 uniq 명령을 사용하는 예를 설명하기 위해 테스트 파일을 사용하며 그 내용은 다음과 같습니다.

[root] $ cat testfile 

이 라인은 한 번만 발생합니다. 

이 라인은 두 번 발생합니다. 

이 라인은 두 번 발생합니다. 

이 라인은 세 번 

발생합니다. 

이 라인은 세 번 발생합니다 . 이 라인은 세 번 발생합니다.


예제 1

출력에서 중복 행을 제거하십시오.

[root] $ sort testfile | uniq 

이 줄은 한 번만 발생합니다.

이 줄은 두 번 발생합니다. 

이 줄은 세 번 발생합니다. 


예제 2

반복되는 각 행의 발생 횟수를 출력에 표시하고 횟수에 따라 역순으로 표시합니다.

[root] $ sort testfile | uniq -c | sort -nr 

3이 줄은 세 번 발생합니다. 

2이 줄은 두 번 발생합니다. 

1이 줄은 한 번만 발생합니다.



★ 파이프 라인에서 wc 명령 사용

wc 명령은 텍스트 스트림에 포함 된 문자, 단수 및 행 수를 계산하는 데 사용됩니다.


예제 1

현재 시스템에 로그인 한 사용자 수를 계산합니다.

  • [root] $ who | wc -l

예제 2

현재 Linux 시스템의 프로세스 수를 계산합니다.

  • [root] $ ps -ef | wc -l
반응형