[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

  • 리눅스 명령행 인자(Command-Line Argument)와 명령어 옵션

    ‘리눅스 명령행 인자(Command-Line Argument)‘는 ‘리눅스 명령어 인수‘, ‘명령 인자‘ 등으로도 불리며, 리눅스 커맨드 라인에서 명령어를 실행할 때 프로그램에 전달하는 매개변수를 뜻 합니다. 리눅스에서 “매개변수(Parameters)”는 일반적으로 프로그램이나 함수에 전달되는 값을 가리킵니다. 이 값은 해당 프로그램이나 함수가 실행될 때 필요한 입력 값으로 사용됩니다. 컴퓨터 프로그래밍에서 “매개변수(Parameters)”는 함수에 전달되는 값을 받아들이는 변수를 의미합니다. 이는 함수 정의에…

  • 리눅스 wget 명령어

    wget 명령어는 웹의 다운로드 링크를 리눅스 커멘드라인에서 실행해 다운로드를 할 수 있는 명령어입니다. HTTP, HTTPS, FTP 프로토콜을 이용해서 웹 서버에서 다운로드가 가능합니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)wget 설치하기 레드헷 계열에서 사용하는 패키지 매니저인 yum으로 wget 설치를 진행합니다. 기본 다운로드 명령입니다. wget 명령어 옵션 다운로드 중 중단…

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

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

  • 리눅스 tee 명령어

    리눅스 tee 명령어는 배관시설에 비유해서 이름이 붙여진 명령어입니다. 파이프 모양과 똑같은 “T”에서 본따 tee 명령어이며 표준 출력으로 하나 이상의 다른 파일을 동시에 출력합니다. tee 명령어의 목적은 작업 진행 중 파이프라인(I)의 중간 내용을 알고 싶을 때 유용하게 사용할 수 있습니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)✅ 리눅스 tee…

  • 리눅스 who, w 명령어 & user 명령어

    리눅스 who 명령어는 현재 서버에 로그인한 사용자 리스트를 보여주는 명령어입니다. w 명령어는 현재 시스템에 로그인한 사용자와 사용자의 작업 내용을 보여주는 명령어로 각각의 차이가 있습니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)✅ 리눅스 who 명령어 현재 접속 사용자(USER) 터미널 유형(TTY) 접속 시간 및 IP rocky pts/0, pts/1 .. 2070-02-09…

  • 리눅스 history 명령어

    리눅스 history 명령어는 이전에 명령어 목록을 확인하는 명령어로 리눅스 콘솔에 접속했을 때 자주 사용하는 명령어 중에 하나입니다. 보통 history만 입력해서 많이 사용하지만 보다 더 다양한 활용 방법에 대해서 알아 보겠습니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)✅ 리눅스 history 명령어 기본 사용 history 명령어 자체만 입력해서 주로 많이…