출력 첫 번째 행의 첫 번째 필드를 인쇄하려고합니다. 여기에 경우가 있습니다. SUSE
이 출력 에서만 인쇄하면 됩니다.
# cat /etc/*release
SUSE Linux Enterprise Server 11 (x86_64)
VERSION = 11
PATCHLEVEL = 2
시도 cat /etc/*release | awk {'print $1}'
했지만 모든 행의 첫 번째 문자열을 인쇄합니다.
SUSE
VERSION
PATCHLEVEL
답변
NR
선택한 행에서 출력을 캡처할지 여부를 지정 하십시오.
awk 'NR==1{print $1}' /etc/*release
동일한 것을 달성 하는 대안 ( 추악한 ) 방법은 다음과 같습니다.
awk '{print $1; exit}'
출력에서 특정 라인 (예 : 라인 42)에서 첫 번째 문자열 을 가져 오는 효율적인 방법 은 다음과 같습니다.
awk 'NR==42{print $1; exit}'
답변
기본 제공 변수를 사용하여 행 번호 를 지정하십시오 NR
.
awk 'NR==1{print $1}' /etc/*release
답변
이 시도:
head -1 /etc/*release | awk '{print $1}'
답변
head
대신 사용할 수 있습니다 cat
.
head -n1 /etc/*release | awk '{print $1}'
답변
sed -n 1p /etc/*release |cut -d " " -f1
탭으로 구분 된 경우 :
sed -n 1p /etc/*release |cut -f1
답변
시험
sed 'NUMq;d' /etc/*release | awk {'print $1}'
여기서 NUM은 줄 번호입니다.
ex. sed '1q;d' /etc/*release | awk {'print $1}'
답변
awk, sed, 파이프, 무거워
set `cat /etc/*release`; echo $1
