강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

레벨237-3 : env로 쉘변수에 값 할당하여 변수리스트 출력하기

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

레벨237-3 : env 쉘변수에 할당하여 변수리스트 출력하기

 

지금까지의 예를 보신 바와 같이 env 쉘변수 리스트를 확인하는 용도로 주로 사용됩니다. 하지만, env 이용하여 쉘변수에 새로운 값을 할당하거나 변경할 있다는 것을 알고 계신분들은 많지 않습니다.

 

예를 들어 HISTSIZE라는 변수에는 사용자가 사용한 명령어를 저장할 때에 개까지 저장할 것인가를 결정하는 숫자가 저장되어 있습니다. 아래 예를 보시는 바와 같이 기본값으로는 1000이라는 값이 저장되어 있습니다.

 

[root@su249 test]# echo $HISTSIZE

1000

[root@su249 test]#

 

그리고 다음 예와 같이 env 이용하여 HISTSIZE라는 변수에 2000이라는 값을 할당하여 출력하고 있습니다.

 

[root@su249 test]# env HISTSIZE=2000

HOSTNAME=su249.com

TERM=vt100

SHELL=/bin/bash

HISTSIZE=2000

SSH_CLIENT=192.168.0.150 2492 22

QTDIR=

OLDPWD=/root

QTINC=/include

SSH_TTY=/dev/pts/4

USER=root

LS_COLORS=no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;

 CCACHE_DIR=/var/cache/ccache

SSH_AUTH_SOCK=/tmp/ssh-DHqvDW2752/agent.2752

MAIL=/var/spool/mail/root

PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:

/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

INPUTRC=/etc/inputrc

PWD=/root/test

CCACHE_UMASK=002

LANG=ko_KR.eucKR

SSH_ASKPASS=/usr/libexec/openssh/gnome-ssh-askpass

SHLVL=1

HOME=/root

SDL_AUDIODRIVER=esd

id=bible

LOGNAME=root

QTLIB=/lib

CVS_RSH=ssh

SSH_CONNECTION=192.168.0.150 2492 192.168.0.249 22

LESSOPEN=|/usr/bin/lesspipe.sh %s

G_BROKEN_FILENAMES=1

_=/bin/env

[root@su249 test]#

 

그렇지만 다시 env 아무런 인자 없이 그냥 실행하면 원래 초기값으로 되돌려 진다는 것을 있습니다.

 

[root@su249 test]# env

HOSTNAME=su249.com

TERM=vt100

SHELL=/bin/bash

HISTSIZE=1000

SSH_CLIENT=192.168.0.150 2492 22

QTDIR=

OLDPWD=/root

QTINC=/include

SSH_TTY=/dev/pts/4

USER=root

LS_COLORS=no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;

 CCACHE_DIR=/var/cache/ccache

SSH_AUTH_SOCK=/tmp/ssh-DHqvDW2752/agent.2752

MAIL=/var/spool/mail/root

PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:

/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

INPUTRC=/etc/inputrc

PWD=/root/test

CCACHE_UMASK=002

LANG=ko_KR.eucKR

SSH_ASKPASS=/usr/libexec/openssh/gnome-ssh-askpass

SHLVL=1

HOME=/root

SDL_AUDIODRIVER=esd

id=bible

LOGNAME=root

QTLIB=/lib

CVS_RSH=ssh

SSH_CONNECTION=192.168.0.150 2492 192.168.0.249 22

LESSOPEN=|/usr/bin/lesspipe.sh %s

G_BROKEN_FILENAMES=1

_=/bin/env

[root@su249 test]#

 

그리고 참고로 아래 예와 같이env 하나의 변수에 값을 할당할 수도 있지만 2 이상의 변수에 값을 할당하여 변수리스트를 출력할 수도 있습니다.

 

[root@su249 test]# env HISTSIZE=2000 HOME=/tmp

 

이상과 같이 env 변수에 값을 할당하고 변수리스트를 출력(Set each NAME to VALUE in the environment and run COMMAND.)하는 명령어라는 것을 있습니다.

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,157 명
  • 현재 강좌수 :  36,515 개
  • 현재 접속자 :  221 명