어떻게 설정합니까 명령 변수를 출력입니다 bash?
나는 꽤 단순한 스크립트입니다 뭔가 다음과 같습니다.
#!/bin/bash
VAR1="$1"
MOREF='sudo run command against $VAR1 | grep name | cut -c7-'
echo $MOREF
When I, I am not 실행하십시오 스크립트입니다 명령줄이 에서 인수, 통과시킬 조절이 출력입니다. 그러나 나는, 나는 '변수' $ 모세 실행하십시오 포함된 명령을 받을 수 있도록 출력입니다.
어떻게 한 결과 시행하십시오 명령을 실행해야 하는 내에 저장할 수 있는 출력을 가변으로 스크립트입니다 redhat. 가변으로 후 화면에?
1497
14
,, #, # 96 박트릭스 외에도 < code> & command& < /code> 96;;; 사용할 수 있습니다 (명령) '또는', '$ $ (명령),' 내가 찾을 수 있는 " " 중첩할 사용할 수 있고, 쉽게 읽을 수 있습니다.
견적 (" ',') 가 문제를 행 보존할지 값.
올바른 방법은
Re 사용하려는 경우 you& # 39, & # 39 ',' 아닌 '"아포스트로피 합니다. 이 문자 호출됨 " backticks"; (또는 중대한 accent" ";).
다음과 같습니다.
& # 39, 얻을 수 있기 때문에 이미 timerevent 콩지름에 backticks& # 39;.
물론 또 다른 제안된 '$ (명령)' 는 것은 쉽게 읽을 수 있지만, 참고 유효함 미디어만을 사용하여 Bash 또는 코른셸 (및 셸 파생됨 해당), 만일 스크립트에 대한 다양한 유닉스 시스템의 경우, 이전 박트릭스 포지셔닝하십시오 상행담관염이라고 이동형이든지 해야 한다고 말한다.
일부 [태그: bash] 내가 사용하는 변수를 설정할 수 있는 명령의 요령
2nd 편집할지 12-02-2018: 다른 방법으로 이 부분에 대해 추가 http://community. 이동작업 !
1 세, 호환적 운행에서어떠한 간단한
호환적, 두 번째 방법은 주로
이를 위해 무거운 구현되었고, 괄호 중첩할 될 수 있다
그러니까말이야 할 세 가지 방법:
1) 기능 등 tasks: 적합한지
이를 통해 'func' 호출하십시오 한다 "고 말했다.
2) 또 다른 적합한 솔루션을 eval: 될 수 있습니다.
3) 는 세 번째 변수를 사용하여 directly:
제 3 의 길을 솔루션이므로 좋은 결과를 얻을 수 있습니다.
못된 공구뿐 아니라 운행에서어떠한:
그냥 다를 수 있습니다.
변수를 설정할 때 있는지 = 이후 공백 없이 전 및 / 또는 사인이야. 말 그대로 하는 데 한 시간 하면 분명 이 모든 종류의 솔루션! 이것은 안 좋아.
이를 통해 스케쳐내 multiline / 여러 command/s 어졌다면 이 작업을 수행할 수 있습니다.
사용할 수 있어야 합니다.
'$ (여기에 명령)'
또는
예
진드기 뒤로를 사용할 수 있습니다 (소트트웨어용 액센트 묘소) 또는 '$ ()'. 것처럼 -
둘 다 동일한 효과를 얻을 수 있습니다. 그러나 출력입니다 = $ (x + 2) 이 훨씬 더 읽기 및 최신 버전을.
이것은 또 다른 방법으로 좋은 텍스트 편집기를 사용할 수 없는 모든 복잡한 코드를 강조표시할 일부 제대로 만들 수 있습니다.
이 때 일부 볼 수도 있다. 대체, 변수 정수 값을 사용하고 있는 '트릭' 더블 브래킷에 $ (()).
다음은 두 개 이상의 다음과 같습니다.
[태그: bash] 공간이 매우 중요한 점을 명심하십시오. 따라서 원하는 경우에는 명령을 그대로 사용, 실행하십시오 유발하지 않으면서 더 독창적이다.
그 후 인쇄 정보정의다음 color_name 하실 L 로 1.
L = $ " harshil"; echo $ L" ";
L2 = $ ($ L1" 에코 "; tr [쇱そ:] [낮은:])
만약 실패하면 명령을 실행할 수 있는 시도 중인 죽이려하겠어요 기록하십시오 출력입니다 인쇄할 수 있는 그런 후 스트리밍합니다 관용으로충만하신 오류 및 콘솔이군요. 이 문제를 방지하려면 리디렉션하십시오 오류 스트림을 합니다