나는별명tcsh. 포트(FreeBSD 포트)에서 프로그램을 찾고 싶습니다.
지금까지 별칭을 만들었지만 작동하지만 *port_name
검색할 수만 있기를 바랍니다 *port_name*
. 내 예가 작동하지 않는 이유를 알려주실 수 있나요?
alias najdi 'echo /usr/ports/*/*\!:1* | sed -e "y/ /\n/"'
.
najdi port_name
finds: *port_name
expected: *port_name*
해결책: 나는 이것으로 전환했습니다: (대소문자도 구분합니다)
alias portfind 'cd /usr/ports && make quicksearch name=\!:1 | grep Path'
답변1
tcsh에서 확장은 !:1*
다음과 같습니다.!:1-$
원하는 것을 달성하려면 다음을 수행해야 합니다.
alias najdi 'echo /usr/ports/*/*\!:1-1* | sed -e "y/ /\n/"'
개인적으로 저는 find
쉘 확장 대신 다음을 사용하는 것을 선호합니다.
alias najdi 'find /usr/ports -type d -maxdepth 2 -name \*\!:1-1\* -print'