셸에는 우리가 자주 사용하는 PATH 변수 등 많은 변수가 있다는 것을 알고 있습니다. 그 기능은 실행 파일의 디렉터리를 설정하는 것이므로 명령을 입력할 때 절대 경로를 사용할 필요가 없습니다. 또한 쉘에는 다른 많은 변수가 있습니다. 오늘은 쉘 변수에 대해 토론해 보겠습니다.
분류
우리는 PHP에서 로컬 변수와 전역 변수 사이에 차이가 있다는 것을 알고 있습니다. 쉘은 환경 변수와 일반 변수가 있다는 점에서 PHP와 매우 유사합니다. 환경 변수는 일반적으로 쉘의 실행 환경을 정의하는 데 사용되는 반면 일반 변수는 쉘 스크립트 작성에 자주 사용됩니다.
환경 변수와 일반 변수의 차이점은 PHP 변수와 매우 유사합니다. 차이점은 사용 범위입니다. 쉘 환경 변수는 현재 쉘과 파생 쉘에서 사용할 수 있지만 일반 변수는 현재 쉘에서만 사용할 수 있습니다. . 환경 변수는 대개 대문자를 사용하고 일반 변수는 일반적으로 소문자를 사용합니다.
환경 변수
현재 환경 변수를 모두 보려면 env(환경) 명령을 사용하세요.
# env XDG_SESSION_ID=38135 HOSTNAME=iz8vb626ci0aehwsivxaydz TERM=xterm SHELL=/bin/bash HISTSIZE=1000 SSH_CLIENT=114.106.186.229 31955 22 QTDIR=/usr/lib64/qt-3.3 ……
set 명령을 사용하여 볼 수도 있지만 이 명령을 사용하면 모든 환경 변수와 일반 변수가 나열됩니다. 일반적으로 환경변수는 대문자로 표현됩니다.
환경 변수 설정 및 취소
사용자가 정의한 환경 변수 설정 방법은 다음과 같습니다
export 变量名=变量值
환경 변수를 취소하려면 unset 명령어를 사용하여 완료하면 됩니다
unset 变量名
시연해 보겠습니다. 아래:
# export HOBBY=basketball # env | grep HOBBY HOBBY=basketball # unset HOBBY # env | grep HOBBY
변수 인쇄 및 설정
리눅스에는 echo 명령어가 있습니다. 사용법은 PHP와 동일합니다.
# echo hello,world hello,world # echo -e "$PWD\n$PATH" /root /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
변수 설정 규칙,
变量名=变量内容
참고 "=" 양쪽에 공백이 있으면 안 됩니다
변수 이름은 문자와 숫자만 가능하며 첫 글자는 숫자가 될 수 없습니다
변수 내용 Spaces가 있는 경우 name="lebron james"와 같이 따옴표(작은따옴표, 큰따옴표)를 사용하여 변수 내용을 묶어야 합니다. 변수는 큰따옴표로 구문 분석될 수 있습니다.
특수 문자가 있는 경우 Enter, ', " 및 기타 특수 문자와 같이 특수 문자를 사용하여 이스케이프할 수 있습니다.
명령 결과를 변수 내용으로 사용하려면 $( command) 또는 command;
변수 내용을 확장하려면 "{$variable} 누적 내용"
array
PHP와 마찬가지로 쉘 변수에도 배열 유형이 있습니다. 배열의 정의 구문은 다음과 같습니다.
变量名=(val1 val2 ... valn); arr=(paul james durant)
배열 요소 구문 인쇄 다음과 같이
echo ${arr[元素下标]} # echo ${arr[0]} paul # echo ${arr[1]} james
배열의 모든 요소를 인쇄합니다
echo ${arr[@]}
배열의 길이를 인쇄합니다
echo ${#arr[@]}
배열 요소의 길이를 인쇄합니다
echo ${#arr[数组下标]}
배열의 일부 요소를 인쇄합니다. ${lnmp[@]:n1:n2} n1은 시작을 의미하고, n2는 길이의 할당, 교체 및 삭제를 나타냅니다.
# 打印所有元素 # echo ${lnmp[@]} linux nginx mysql php # echo ${lnmp[@]:0} linux nginx mysql php # 打印从第二个元素开始的所有值 # echo ${lnmp[@]:1} nginx mysql php # 打印第一个值和第二个值 # echo ${lnmp[@]:0:2} linux nginx # 打印第二个值和第三个值 # echo ${lnmp[@]:1:2} nginx mysql
array
#追加元素 # lnmp[${#lnmp[@]}]=apache # echo ${lnmp[@]} linux nginx mysql php apache # 修改元素 # lnmp[0]=l # echo ${lnmp[@]} linux nginx mysql php # 删除元素 unset lnmp[0] unset lnmp[1] unset lnmp
위 내용은 Linux 운영 및 유지 관리 쉘 변수.md의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!