그것은 나에게 당신이 달성하려고하는 정확한 출력 분명하지 않다,하지만 난 당신이 코드에 확인해야합니다 2 수정을 참조하십시오이 더 감소 될 수있다
을
agent_name=$(hostname)
nslookup $agent_name | grep Name | awk '{print $2}' > /var/tmp/${agent_name}_list.txt
에 AWK의 많은 기능의
agent_name=$(hostname)
nslookup $agent_name | awk '/Name/{print $2}' > /var/tmp/${agent_name}_list.txt
하나는 패턴과 일치하고, 행동 일치 단지 라인의 제한하는 것입니다.
댓글 여기
agent_name='hostname'
그냥 문자열 값 "호스트 이름" 참고 방법 위에서 AGENT_NAME의 값을 설정하고, 나는 캡처에 쉘 명령의 대체 기능을 사용하고 있습니다 hostname
명령의 현재 값
nslookup $agent_name | grep Name | awk '{print $2}' > /var/tmp/$agent_name_list.txt
그리고 여기, 당신은 쉘 변수로 $의 agent_name_list을 평가하려고하지 않도록 변수 "래퍼"{}
를 사용해야합니다. agent_name에 값을 지정 했으므로 agent_name_list에 값이 없습니다. 선도적 인 '$'문자를 감안할 때, {}
래퍼는 쉘에게 "이 변수 이름은 무엇일까?"라고 알려줍니다. ..
위의 수정 된 예제로 문제가 완전히 해결되지 않으면 샘플 입력 데이터, 샘플 데이터가있는 필수 출력, 현재 코드 및 해당 현재 코드의 출력을 포함하도록 메시지를 편집하십시오.
IHTH
{code sample} – Sampath