it-swarm-ko.tech

grep-구분자 토큰 뒤의 텍스트 제거

모든 행에서 첫 번째 ; 이후의 모든 것을 제거해야하는 파일이 있습니다.

따라서 다음과 같은 파일 :

sdfsdsdf;
fsdfsddf;sdfsd;

결과는 다음과 같습니다.

sdfsdsdf
fsdfsddf

grepsed을 조사했습니다. 이 명령 중 하나를 포함하는 답변을 주시면 감사하겠습니다.

12
garbagecollector

sed은이 상황에서 awk 또는 Perl보다 가장 쉽고 빠릅니다.

sed 's/^\([^;][^;]*\);.*$/\1/' some_file_name
5
Bruce Ediger

또 다른 옵션은 cut 명령을 사용하는 것입니다.

cat a.file | cut -d';' -f1
7
Richm

저는 일반적으로 다음과 같은 경우 awk을 사용합니다.

cat a.file | awk -F=";" '{ print $1 }'

파일의 각 줄을 가져와 구분 기호 -F 앞에 첫 번째 그룹을 인쇄합니다.

3
Marco Ceppi

다음은 GNU grep를 사용하여 수행하는 방법입니다.

grep -Po "^[^;]+(?=;?)" filename