[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

  • 리눅스 touch 명령어

    touch 명령어는 파일의 날짜 시간 정보를 변경하는 명령어입니다. 아무 옵션 없이 사용할 경우 파일의 최근 사용 시간, 변경 시간이 서버의 현재 시간으로 변경됩니다. 파일이 없는 파일명을 입력할 경우 새로운 크기가 0인 빈 파일이 생성됩니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)✅ touch 명령어 기본 사용 방법 ✅ touch…

  • 리눅스 퍼미션(4,2,1)과 소유권 | chmod, chown, umask 명령어 | 스티키 비트

    리눅스 퍼미션(Permission)은 권한(&허가)을 의미합니다. 유닉스 계열 운영 체제들은 MS-DOS 계열의 운영 체제들은 멀티 테스킹 시스템이 아니며 멀티 유저 시스템 역시 아닙니다. 보통 컴퓨터는 하나의 키보드와 모니터를 가지고 한 명이 사용하지만 멀티 유저 시스템인 리눅스는 한 명 이상이 사용할 수 있다는 것을 의미합니다. 유닉스 계열의 멀티 유저 시스템은 운영 체제 설계 초기부터 깊게 내장된…

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

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

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

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

  • 리눅스 uniq 명령어

    리눅스 uniq 명령어는 “unique”의 약자이며, 텍스트 파일에서 중복된 행을 제거하고 하나의 행만 출력하는데 사용됩니다. 중복된 텍스트 데이터를 제거하고 몇 번의 반복이 있었는지 등을 확인할 때 매우 유용하게 사용할 수 있습니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3. 더블 버티컬바(||)4. 더블 엠퍼센트(&&)5. 엠퍼센드(&)✅ 리눅스 uniq 명령어 기본 사용법 INPUT 파일은 대상 파일로써 표준 입력에서…

  • 리눅스 kill 명령어[kill -9 PID]

    리눅스 kill 명령어는 사용 중인 프로세스를 종료하는 명령어입니다. 터미널에서 프로세스에 시그널(Signal)을 보내서 프로세스를 종료합니다. 프로그램이 정지하거나 응답하지 않는 경우 일반적인 종료가 되지 않는 경우 등에 따라 명령어를 실행하게 됩니다. kill process는 사용 시 중요한 시스템 프로세스를 종료 시키면 시스템이 불안정해질 수 있기 때문에 주의해서 사용해야 합니다. 목차1. 많이 쓰는 다중 명령어 세미콜론(;)2. 파이프(|)3….