[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

  • 리눅스 심볼릭 링크(Symbolic Link)와 하드 링크(Hard Link)

    리눅스에서 사용하는 심볼릭 링크(Symbolic Link)는 윈도우에서 사용하는 “바로가기”와 같은 기능을 가지고 있습니다. 소프트 링크 or 심링크로도 불리며, 하나의 파일에 여러 이름으로 생성할 수 있습니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)✅ 심볼릭 링크 하드 링크 명령어 [-s 옵션]은 Symbolic Link를 만들어 주는 옵션이며 [-s 옵션]이 빠지게 되면 Hard…

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

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

  • 리눅스 ls 명령어

    ls 명령어는 list의 약자이며, 리눅스 파일과 디렉토리를 볼 수 있는 명령어입니다. 파일의 종류와 파일의 크기, 만들어진 날짜 등의 정보를 확인할 수 있습니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)✅ ls 명령어 기본 사용 방법 ls 명령어 사용 시 [파일 or 디렉토리]를 입력하지 않으면 현재 디렉토리를 검색합니다. ✅ ll…

  • echo 명령어: From 확장과 인용

    echo 명령어는 문자열을 그대로 출력해 주는 명령어이다. echo 명령어는 프롬프트에서 사용하는 일은 거의 없으며, 쉘 스크립트 작성 시에 자주 사용하는 명령어이다. 표준 출력 상에 해당 텍스트 인자를 표시한다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)1. echo 명령어 옵션 2. echo $ $뒤에 오는 문자열이 변수로 선언되어 있는 경우…

  • 리눅스 tee 명령어

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

  • 리눅스 cat 명령어

    리눅스에서 텍스트 파일을 출력하는 간단한 ‘cat 명령어’는 명령어 뒤에 파일명을 적어 표준 출력(Standard Output)을 할 수 있습니다. cat은 “연결시키다”, “연관시키다” 등의 뜻을 가지고 있는 영어단어 “concatenate”에서 유래되었습니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)1. cat 명령어 특징 출력과 비슷한 의미의 단어가 아닌 “concatenate“라는 단어에서 유래된 이유는 “|” pipe…