Shell 스 크 립 트 주의
#!/bin/bash myvar = 3\# 정확 한 myvar = 3; #등호 변 에 빈 칸 이 많아 진 것 은 잘못된 것 이다!판이 하 죠?
1.1 아니면 빈 칸, 이번 에는 없 으 면 안 됩 니 다
#!/bin/sh
myVar="OFF"
if [ $myVar = 'OFF' ];then
#这里[]中括起来的内容两端必须有空格,if [$myVar = 'OFF']是不能正常工作的。也很迥异吧
#注意 if 和 [ 之间也是有空格的!
echo "works"
else
echo "Not works"
fi
2. 따옴표 와 작은 따옴표
testvar = 5 myvar = 'Haha $test'\# shell 은 $test myvar 2 = 'Haha $test'\# shell 은 $test echo $myvar 2\# 출력: Haha $test Haha 5 를 설명 합 니 다.
작은 따옴표 에 있 는 문자 에 변수 가 있 으 면 셸 은 설명 을 시도 합 니 다. 작은 따옴표 에 서 는 그렇지 않 습 니 다.따라서 문자열 에 설명 할 변수 가 없 으 면 작은 따옴표 를 사용 하 는 것 이 빠 를 것 이 라 고 합 니 다.
이것 은 크게 다 르 지 않 고 다른 언어 도 이런 약속 을 많이 한다.
3. 이상 한 산술 연산
셸 에서 산술 연산 은 $(와) 를 사용 하여 산술 연산 을 묶 어야 합 니 다.
$($myvar + 12)\# 이 건 아주 판이 합 니 다.
4. case 구문
case "${x##*.}" in
gz)
gzunpack ${SROOT}/${x}
;;
bz2)
bz2unpack ${SROOT}/${x}
;;
*)
echo "Archive format not recognized."
exit
;;
esac #这个比较迥异 "esac"、";;"、"bz2)"
5. 함수 중의 변수 역할 범위
#!/usr/bin/env bash
myvar="hello"
myfunc() {
myvar="one two three"
for x in $myvar
do
echo $x
done
}
myfunc
echo $myvar $x
输出:
one
two
three
one two three three #函数myfunc中的变量,在函数之外仍然存在。
#你可以通过关键字 local 限制变量只在函数中有效果 #这个比较迥异
더 판이 한 것 이 있 습 니까?
참고 문헌:
http://www.ibm.com/developerworks/cn/linux/shell/bash/bash-1/index.html
http://www.ibm.com/developerworks/cn/linux/shell/bash/bash-2/index.html
http://www.ibm.com/developerworks/cn/linux/shell/bash/bash-3/index.html
http://www.linuxsir.org/main/?q=node/135
BASH Programming − Introduction HOW−TO
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
양식 제출 후 제출 버튼 비활성화텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.