Bash Shell - 명령어 실행 결과를 변수에 저장

Bash shell에서 명령어 실행 결과를 변수에 저장할 수 있습니다. 실행 결과를 문자열로 받아 특정 조건을 체크할 수 있습니다.

Example 1

다음과 같이 $(command)로 실행 결과를 변수에 저장할 수 있습니다.

#!/bin/bash

RESULT=$(uname -r)

echo $RESULT

Output:

$ bash example.sh
5.11.0-40-generic

또는 다음과 같이 실행 결과를 변수에 저장할 수 있습니다.

#!/bin/bash

RESULT=`uname -r`

echo $RESULT

Output:

$ bash example.sh
5.11.0-40-generic

Example 2 : 실행 결과가 여러 줄인 경우

아래와 같이 명령어 실행 결과가 여러 줄인 경우,

$ ls -al
total 96
drwxrwxr-x  3 mjs mjs 4096 109 21:52 .
drwxr-xr-x 49 mjs mjs 4096 1219 16:36 ..
-rw-rw-r--  1 mjs mjs   75  930 22:12 ex_add2.sh
-rw-rw-r--  1 mjs mjs   48  930 22:12 ex_add.sh

다음과 같이 출력하면 한줄로 결과가 출력됩니다.

#!/bin/bash

RESULT=$(ls -al)

echo $RESULT

Output:

$ bash example.sh
total 96 drwxrwxr-x 3 mjs mjs 4096 10월 9 21:52 . drwxr-xr-x 49 mjs mjs 4096 12월 19 16:36 .. -rw-rw-r-- 1 mjs mjs 75 9월 30 22:12 ex_add2.sh -rw-rw-r-- 1 mjs mjs 48 9월 30 22:12 ex_add.sh

터미널에서 명령어를 사용했을 때와 동일하게 결과가 출력되게 하려면, 다음과 같이 ""으로 감싸서 출력해야 합니다.

#!/bin/bash

RESULT=$(ls -al)

echo "$RESULT"

Output:

$ bash example.sh
total 96
drwxrwxr-x  3 mjs mjs 4096 10월  9 21:52 .
drwxr-xr-x 49 mjs mjs 4096 12월 19 16:36 ..
-rw-rw-r--  1 mjs mjs   75  9월 30 22:12 ex_add2.sh
-rw-rw-r--  1 mjs mjs   48  9월 30 22:12 ex_add.sh
Loading script...

Related Posts

codechachaCopyright ©2019 codechacha