[Linux] 다중 명령어 5가지(세미콜론, 파이프, 엠퍼센트..)

리눅스Bash Shell에서 다중 명령어를 사용하는 목적은 하나의 라인에서 여러 명령을 실행할 수 있기 때문입니다. 종류는 ⓐ 세미콜론(;) ⓑ 파이프(|) ⓒ 더블 버티컬바(||) ⓓ 엠퍼센트(&) ⓔ 더블엠퍼센트(&&) 등이 있습니다.

1. 많이 쓰는 다중 명령어 세미콜론(;)

하나의 명령어 라인에서 여러 개의 명령을 실행하며, 처음 명령어 실행의 성공, 실패 여부와 상관 없이 다음 명령이 실행됩니다.

~]# cd www/; ll
-rw-r--r--  1 xxxxxxx xxxxxxx     25602 Aug  9 15:43 wp-settings.php
-rw-r--r--  1 xxxxxxx xxxxxxx   34385 Aug  9 15:43 wp-signup.php
-rw-r--r--  1 xxxxxxx xxxxxxx   12890 Apr 22 04:20 wpt-hotlinked-image-stub.png
-rw-r--r--  1 xxxxxxx xxxxxxx    4885 Aug  9 15:43 wp-trackback.php
-rw-r--r--  1 xxxxxxx xxxxxxx    3236 Aug  9 15:43 xmlrpc.php
~]#
콜론(colon)&세미콜론(semicolon)-키보드

2. 파이프(|)

앞에서 나온 명령 결과를 참조해서 두 번째 명령 결과를 나타냅니다. 파이프라인(|)은 표준 출력 된 명령어를 표준 입력으로 변경합니다. 명령어에 종류에 따라 표준 출력을 보여줍니다.

~]#  find ./ -name 'wp*' | wc -l
248
~]#

3. 더블 버티컬바(||)

앞에 명령어가 실패했을 경우에만 다음 명령어를 실행합니다.

~]#find ./ -name 'wp' | wc -la || find ./ -name 'load' | wc -l
wc: invalid option -- 'a'
Try 'wc --help' for more information.
21
~]#

wc -la에서 a가 붙음으로써 명령어가 실패하고 뒤에 명령어가 활성화 되었습니다. 앞에 명령어가 wc -l로 성공했다면 뒤에 명령어는 실행되지 않습니다.

Server(서버)

4. 더블 엠퍼센트(&&)

앞에 명령어가 성공하면 다음 명령어를 실행합니다.

 ~]# rm -f html/ && ll
rm: cannot remove 'html/': Is a directory

 ~]# rm -rf html/ && ll
total 4
d--------- 6 ukcresearch nobody 4096 Feb 12 13:44 www

5. 엠퍼센드(&)

명령어를 백그라운드에서 실행하며, 인터페이스 작업을 할 수 있습니다.

 ~]# tar cfzp 파일명.tgz 압축할 폴더 &
[1] 178339

파일 백업 명령어를 사용할 때 파일의 용량이 클 경우 백그라운드 작업을 실행한 후 다른 작업을 진행할 때 사용할 수 있습니다.

백그라운드 작업 중에 진행 중 상태는 jobs 명령으로 확인할 수 있습니다.

 ~]# tar cfzp www.tgz www/ & 
[1] 169584
 ~]#  jobs
[1]+  Running                 tar cfzp www.tgz www/ &
 ~]# kill %1
 ~]# jobs
[1]+  Terminated              tar cfzp www.tgz www/

중지는 kill %1 또는 강제 중지는 kill -9 %1를 사용합니다. 여기서 ‘%1’은 중단할 백그라운드 작업 번호입니다.

리눅스 이미지

Similar Posts

  • 리눅스 백그라운드(Back Ground)&포그라운드(Fore Ground): 프로세스 제어하기

    리눅스의 프로세스는 백그라운드(Back Ground)와 포그라운드(Fore Ground) 두 가지의 모드로 작동됩니다. 리눅스 백그라운드 작업을 하는 이유는 일반적인 쉘 명령어를 실행했을 때 프로세스가 종료될 때까지 기다리면서 다른 작업을 하지 못하는 경우가 있기 때문입니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)✅ 리눅스 포그라운드(Fore Ground)란? 터미널에 직접 연결되어 터미널과 입출력을 진행하는 프로세스를…

  • 리눅스 killall 명령어: 설치, 사용 방법과 옵션

    리눅스 killall 명령어는 특정 프로세스를 한번에 종료 시키는 명령어입니다. kill과 killall은 단순 종료가 아닌 프로세스에 지정한 시그널(Signal)을 보내는 명령어로 시그널에서 액션이 종료일 때 프로세스가 종료됩니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)✅ 리눅스 killall 명령어 설치 대부분의 유닉스 시스템에서는 killall 명령어가 설치되어 있지만 설치되어 있지 않은 경우 psmisc…

  • clear 명령어

    목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)■ clear 명령어 – 기타명령어 clear 명령어는 리눅스에서 출력 된 터미널 화면을 지우는 명령어이다. clear 명령어는 도스의 cls 명령어와 동일한 뜻과 기능을 가지고 있다. 리눅스 터미널 화면을 지워주고 커서는 화면 상단에 위치학게 된다. 아래처럼 ll 명령어를 입력 후 clear 명령어를 입력해서 테스트…

  • ps 명령어(프로세스 명령어)

    ps 명령어는 현재 실행 중인 프로세스를 출력하는 명령어입니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)1. ps 명령어 옵션 ps에서 주로 사용되는 명령어입니다. 기본 사용 옵션은 아래와 같습니다. 2. ps -ef 명령어 ps -ef 명령어는 모든 프로세스를 포멧 리스트로 출력해 줍니다. 2.1 출력 필드 ps 출력 필드 기본 설명입니다….

  • 리눅스 서버 시간 동기화: timedatectl(CentOS7 이상)

    리눅스에서 날짜 및 시간 설정이 필요한 이유는 서버 운영 중 시간이 잘못되면, 입력되는 DB데이터, 로그 데이터, 웹 서버에 접속한 기록 등의 시간이 맞지 않는 경우가 발생할 수 있기 때문입니다. 리눅스 서버 시간 동기화를 사용하는데 있어 OS는 두 개의 시계를 가지고 있습니다.시스템 시계(소프트웨어 시계), 하드웨어 시계(실시간 시계, BIOS 시계)입니다. 목차1. 많이 쓰는 다중 명령어…

  • 리눅스 명령어 13가지 카테고리 분류&시스템의 이해

    리눅스의 명령줄 인터페이스(Command Line Interface, CLI)는 컴퓨터 프로그램 및 운영체제와 상호 작용하기 위한 텍스트 기반의 사용자 인터페이스입니다. 리눅스 명령어는 유닉스 계열 운영체제어서 거의 동일하게 작동하며, 명령어를 입력해서 파일의 생성, 수정, 복사 이동 및 서버 전반에 걸친 관리를 하게 됩니다. 명령어를 카테고리로 분류하지만 틀릴 수 있는 점을 참고하여 주시기 바랍니다. 목차1. 많이 쓰는 다중…