문자 "(" 앞에 있는 문자를 추출해야 합니다. 내 파일 구조는 다음과 같습니다.
로즈 (좋아요) 알았어
데이지() 아니요
릴리(나쁨)는 좋다
해바라기()가 좋다
다음 형식의 출력 파일이 필요합니다.
rose
daisy
lilly
sunflower
이 명령 좀 알려주실 분 계시나요...
awk, grep 또는 sed가 더 나은 선택입니다...
답변1
또 다른 sed
해결책:
sed 's/(.*//' file
답변2
사용 cut
:
$ <file cut -d \( -f 1
rose
daisy
lilly
sunflower
사용 sed
:
$ <file sed -e 's/\(.*\)(.*$/\1/'
rose
daisy
lilly
sunflower
답변3
해결책 awk
:
$ awk -F'(' '{print $1}' file
rose
daisy
lilly
sunflower
또는 GNU grep
:
grep -oP '.*?(?=\()' file
답변4
잘라내기 명령을 사용할 수 있습니다.
cut -f1 -d "(" file_name