Unix에서 "hello"가 포함된 줄을 file1에서 file2로 리디렉션하고 싶습니다. 여기서 사용된 명령은 무엇입니까?
답변1
이 명령이 필요합니다 grep
. ( man grep
).
및 파일 리디렉션 >
. ( man bash
)
grep 매뉴얼에서
.
.
.
SYNOPSIS
grep [OPTION...] PATTERNS [FILE...]
.
.
.
-F, --fixed-strings
Interpret PATTERNS as fixed strings, not regular expressions.
.
.
.
이 설명서를 더 자세히 읽어 보시기 바랍니다.
답변2
이는 grep의 교과서 사용이므로 동사로는 "리디렉션"이 아닌 "grepping"이라고 합니다.
fgrep hello file.txt > file2.txt
fgrep
grep
f
일치하는 대신 고정 문자열의 변형만 찾는 것입니다 .일반적인 표현, re
가운데 grep
). 표준에 해당하는 것은 이지만 grep -F
, grep
Solaris와 같은 /bin/grep
이전 구현에서는 아직 해당 -F
옵션을 지원하지 않습니다.
답변3
나는 답을 얻었다
sed -i -e '/hello/{ w file2.txt' -e 'd;}' file1.txt
(행동일치하는 줄 항목 file2.txt
)
또는
grep "hello" file1.txt > file2.txt
(복사일치하는 줄 항목 file2.txt
)