
이 속성이 처음 나타나는 항목을 찾아서 ICount
해당 값을 반환해야 합니다. 속성에는 숫자만 있습니다. 얻는 방법?
< FCount = "1" ICount = "0" Ccount= "1">
답변1
grep
및를 사용하여 sed
a) 다음 정수(!) ICount
(임의의 자릿수 포함)를 얻고 b) ICount
지정자를 제거합니다.
grep -o 'ICount = "[0-9]\{1,\}' | sed 's/.*"//'
답변2
통과하다 awk
:
awk -F"ICount *= *\"" '{sub(/".*/,"",$2); print $2}'
예
% <<<'< FCount = "1" ICount="0" Ccount= "1">' | awk -F"ICount *= *\"" '{sub(/".*/,"",$2); print $2}'
0
또는 다른 모든 속성
% <<<'< FCount = "1" ICount="0" Ccount= "1">' | awk -F"Ccount *= *\"" '{sub(/".*/,"",$2); print $2}'
1
% <<<'< FCount = "1" ICount="0" Ccount= "1">' | awk -F"FCount *= *\"" '{sub(/".*/,"",$2); print $2}'
1
답변3
도구를 개별적으로 사용하는 것이 더 좋습니다.
sed -n '/.*ICount\s*=\s*"\?/{s///;s/[^0-9].*//;p;q;}' file
좀 더 클래식한
sed -n 's/.*ICount\s*=\s*"\?\([0-9]\+\)"\s.*/\1/p;/ICount\s*=/q' file
또는 grep 및 PCRE를 통해
grep -m1 -Po 'ICount\s*=\s*"?\K[0-9]+' file