2012-08-24 2 views
-2

모두, 난 그게 내가의 bash는 스크립트에 무슨 뜻인지 몰라, bash는 프로그램에 문제가있다 :

${parameter:-word} 
${parameter:=word} 
${parameter:?word} 
${parameter:+word} 
${parameter:offset} 
${parameter:offset:length} 
${!prefix*} 
${#parameter} 
${parameter#word} 
${parameter##word} 
${parameter%word} 
${parameter%%word} 
${parameter/pattern/string} 
${parameter//pattern/string} 

이 사용이, 대답은 나를 주셔서 감사합니다.

+0

배시 파라미터 확장 [여기]를 설명한다 (http://www.gnu.org/software/bash /manual/html_node/Shell-Parameter-Expansion.html). 그러나 귀하의 질문은 지나치게 광범위합니다. 실제 문제와 관련하여보다 구체적인 질문을하십시오. 또한, Stackoverflow는 이미 bash의 쉘 매개 변수 확장과 관련된 문제에 대해 몇 가지 Q/A를 가지고 있으므로 먼저 확인해야합니다. –

+0

['남자 bash'] (http://linux.die.net/man/1/bash) –

답변

0

터미널 창을 열고 man bash을 입력하면 Parameter Expansion 아래에있는 내용을 모두 찾을 수 있습니다. 사실

, 이러한 정확히 사람 페이지 (parameterword 사용)을 가지고있는 형태 당신이 그 (것)들이 같은 순서로, 당신이 이미 알고하지 않습니다 놀랍을하기 때문에.

사용시 기본 설정 값 :

한 예는 상태 ${parameter:-word}입니다. parameter가 설정 또는 널이면 word의 확장은 치환된다. 그렇지 않으면 parameter 값으로 대체됩니다.

그래서, 그 경우에, ${xyzzy:-plugh} 그렇지 않으면 당신은 문자 그대로 "plugh"을 얻을 것이다, 당신에게 ${xyzzy}이 설정되어있는 경우의 가치를 제공 할 것입니다. 내가 그들 모두를 통과하지 않습니다

bash 매뉴얼 페이지 전체 자세히 설명합니다. "남자에게 생선을 가르쳐 라."그리고 그 모든 것들.

+0

감사합니다, 당신이 아름답습니다 ~ – user1621691

0

매개 변수 확장

다음과 같이 매개 변수 확장의 형식은 다음과 같습니다

${expression} 

표현이 일치하는 '}'까지 모든 문자로 구성 곳. 역 슬래시 나 따옴표로 묶은 문자열에서 이스케이프 된 모든 '}'및 포함 된 산술 확장, 명령 대체 및 변수 확장의 문자는 일치하는 '}'을 결정할 때 검사되지 않습니다.

파라미터 확장 간단한 형태는 다음 상세한 내용

${parameter} 

볼 :
http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html