답변:
명령의 경우 compgen -c
:
$ compgen -c bas
basename
base64
bashbug
bash
basename
base64
bashbug
이 출력을 통해 간단히 파이프 할 수 있습니다 grep
.
@ salutis의 답변에 따라 내가라는 스크립트 생성 comp
및 저장 ~/bin/comp
이 검색 commands
' aliases
, 그리고 builtins
(옵션 플래그는, -cab
참조 bash는 사람이 항목을 선택 두 번째 매개 변수로, 이는, 현재, 파이프 경우에 출력) grep
및 검색 두 번째 매개 변수.
Usage: comp string [keyword-for-grep]
암호:
#!/bin/bash
if [ -z "$1" ]; then
echo usage: comp string [keyword-for-grep]
echo
exit
fi
if [ -z "$2" ]; then
compgen -cab -- $1
exit
fi
compgen -cab -- $1 | grep -i $2
개인적으로 나는 또한 역사를 history -d
검색 할 때 항목을 bash
찾을 수 없도록 스크립트의 쉘 기록에서 마지막 명령을 제거하는 방법을 알아내는 데 관심이 있습니다 (관련 내용 ) comp
. 나도 이것을 할 수 있다는 것을 알고 HISTIGNORE
있지만 리눅스는 매우 강력하므로 스크립트 파일에서도 그렇게 할 수있는 방법이 있어야합니다.
당신이 찾고있는 것을 찾으십시오?
예:
find / -name ec2* -executable -type f -perm -og+rx -print
사용 사례를 알고 있으면 더 자세한 명령 예제를 만들 수 있습니다.
grep
정규식에 어떻게 들어갈 것이라고 상상 하십니까?(y or n or g[rep])
? 나는 비관적으로 들리는 것을 싫어하지만 bash 코드에 추가하지 않고도이 작업을 수행 할 수는 없습니다.