나는 grep이 다음과 같은 동작을 하도록 하고 싶습니다:
grep --java <rest of the command>
여기서 --java는 --include=*.java로 동적으로 변환되거나 내부적으로 동일합니다. 내 .cshrc 파일에서 이 작업을 수행할 수 있는 방법이 있나요? 전체 명령을 사용해 보았지만 현재 단어에서 대체 명령을 사용할 수 없는 것 같습니다.
답변1
다른 구문(이 경우 더 짧고 입력하기 쉬움)을 사용하려는 경우 해당 구문에 대한 별칭을 만드세요. 다음 항목에 추가하세요 ~/.cshrc
.
alias jgrep grep --include="*.java"
그런 다음 다음과 같은 명령을 실행할 수 있습니다.
jgrep foo *
그것은 실행될 것이다
grep --include="*java" foo *
답변2
이것은 에서 할 수 있는 일이 아닙니다 tcsh
.
귀하의 옵션은 다음과 같습니다:
terdon이 이미 언급했듯이 별칭을 사용하십시오.
alias jgrep grep --include="*.java"
완료 모드를 설정합니다. 예를 들어:
complete grep 'c/--/(complete)/' 'n/--complete/(*.java *.rb *.py)/'
이렇게 하면 입력할 수 있습니다
grep --<Tab><Tab>j<Tab>
.변수 사용:
set java = '--include=*.java' grep -r "$java" foo
개인적으로는 반드시 더 쉽다고 생각하지는 않습니다.
마침내 나는 찾았다the_silver_searcher코드 트리를 "grepping"하는 데 더 유용하고 빠릅니다. 확인해 보시면 좋을 것 같습니다.