쉘프로그래밍강좌060: set명령어를 옵션 없이 그냥 사용하면 전체 쉘변수와 그 값을 출력
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,003 조회
- 0 추천
- 목록
본문
쉘프로그래밍강좌060: set명령어를 옵션 없이 그냥 사용하면 전체 쉘변수와 그 값을 출력
다음 예와 같이 set명령어를 쉘프롬프트에서 아무런 옵션 없이 그냥 실행하면 현재 설정되어 있는 쉘변수들과 그 변수들의 값들이 출력됩니다.
쉘변수들의 설정내용을 확인하기 위하여 많이 사용되는 방법입니다.
아래의 set명령어 실행 결과는 필자의 시스템에서 옵션 없이 set명령어만 실행한 예로서 그 결과를 나타낸 것입니다.
출력결과가 너무 길어서 뒷부분은 생략하였음을 양해바랍니다.
[root@RockyLinux01 ~]# set BASH=/bin/bash BASHOPTS=checkwinsize:cmdhist:complete_fullquote:expand_aliases:extglob:extquote:force_fignore:globasciiranges:histappen d:interactive_comments:login_shell:progcomp:promptvars:sourcepath BASHRCSOURCED=Y BASH_ALIASES=() BASH_ARGC=([0]="0") BASH_ARGV=() BASH_CMDS=() BASH_COMPLETION_VERSINFO=([0]="2" [1]="11") BASH_LINENO=() BASH_REMATCH=() BASH_SOURCE=() BASH_VERSINFO=([0]="5" [1]="1" [2]="8" [3]="1" [4]="release" [5]="x86_64-redhat-linux-gnu") BASH_VERSION='5.1.8(1)-release' COLUMNS=120 COMP_WORDBREAKS=$' \t\n"\'><=;|&(:' DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/0/bus DEBUGINFOD_URLS='https://debuginfod.centos.org/ ' DIRSTACK=() EUID=0 GROUPS=() GUESTFISH_INIT='\e[1;34m' GUESTFISH_OUTPUT='\e[0m' GUESTFISH_PS1='\[\e[1;32m\]><fs>\[\e[0;31m\] ' GUESTFISH_RESTORE='\e[0m' HISTCONTROL=ignoredups HISTFILE=/root/.bash_history HISTFILESIZE=1000 HISTSIZE=1000 HOME=/root HOSTNAME=www.linux.co.kr
…. 이하생략 |
실행결과를 모두 나타내지는 못했지만 위의 set명령어의 실행결과는 약 180행정도 됩니다.
따라서 set명령어의 출력결과가 너무 많기 때문에 쉘변수들과 그 값들을 한 화면에서 모두 확인한다는 것은 어려울 것입니다.
이런 경우 실무적인 사용법은 “set | grep 변수명”와 같이 쉘변수들 중에서 확인하고자 하는 변수에 대해서만 그 값을 확인하는 방법을 사용하시기 바랍니다.
즉 실제로 필자가 set명령어를 실무에서 사용하는 방법은 다음과 같습니다.
즉, hostname이라는 명령어로 확인할 수 있는 방법도 있지만 HOSTNAME에 대한 쉘변수의 설정값을 확인하고자 한다면 다음과 같이 합니다.
[root@RockyLinux01 ~]# set | grep HOSTNAME HOSTNAME=www.linux.co.kr [root@RockyLinux01 ~]# |
그리고 다음은 history명령어로 확인 가능한 현재 계정사용자가 사용했던 지난 명령어 기록파일과 명령어 기록개수에 대한 쉘변수에 대해 확인한 예입니다.
[root@RockyLinux01 ~]# set | grep HISTFILE HISTFILE=/root/.bash_history HISTFILESIZE=1000 [root@RockyLinux01 ~]# |
즉, 위의 정보에서 알 수 있는 것은 쉘변수 HISTFILE의 설정에 의해 현재 계정사용자가 사용했던 명령어를 .bash_history파일에 저장한다는 것과 쉘 변수 HISTFILESIZE에 의해 저장되는 명령어의 개수가 1000개라는 것을 알 수 있습니다.
관련자료
-
이전
-
다음