문자열을 재귀 적으로 검색하려고 grep
하지만이를 얻습니다.
$ grep -r "stuff" *
grep: unrecognized option '---corporate-discount.csv'
Usage: grep [OPTION]... PATTERN [FILE]...
Try 'grep --help' for more information.
Bash가 -
인수로 시작하는 파일을 전달하지 못하게하려면 어떻게 해야합니까?
4
관련 : 이름이 "-"(하이픈, 일명 대시 또는 빼기)로 시작하는 파일을 어떻게 삭제합니까?
—
steeldriver
셸에서 이러한 파일을 전달하지 못하게하고 싶지 않습니까? 문제는
—
DonHolgo
grep
옵션이 아니라는 것을 말하는 방법 입니다.
명확하게 말하면, bash는 어떤 결과가 옵션으로 취급되고 인수로 취급되는지 제어하지 않습니다. 그것은 수신 프로그램의 통제에 있습니다. 예를 들어
—
Charles Duffy
subprocess.Popen(['grep', '-r', '-e' 'stuff', '--corporate-discount.csv'])
파이썬에서는 어디서나 bash없이 동일한 동작을 얻을 수 있습니다.
—
와일드 카드
@Wildcard,
—
Charles Duffy
--
옵션 끝시길로 사용하는 것도 완벽하게 합리적입니다. POSIX 유틸리티 구문 지침에 따라야합니다. 지침 # 10을 참조하십시오. 물론 모든 프로그램이 POSIX 지침을 따르는 것은 아니지만 문제가되는 프로그램의 작성자를 정리하거나 업계에서 배출하는 것이 정답입니다.