回答
你可以使用compgen。例如:
compgen -c
你也可以用grep,就像這樣:
compgen -c | grep top$
來源:http://www.cyberciti.biz/open-source/command-line-hacks/compgen-linux-command/
「tab」兩次&「y」打印$ PATH路徑中的所有文件。所以只要在PATH中打印所有文件就足夠了。
在外殼只需鍵入:
# printf "%s\n" ${PATH//:/\/* } > my_commands
這重定向所有命令到一個文件「my_commands」。
您的路徑上可能存在一些實際上不可執行的內容。
#!/bin/sh
for d in ${PATH//:/ }; do
for f in "$d"/*; do
test -x "$f" && echo -n "$f "
done
done
echo ""
當然,這也會打印路徑。如果你只想要不合格的文件名,應該很容易適應這一點。
有趣的是,StackOverflow不知道如何處理語法突出顯示。 :-)
如果您先調整字段分隔符,則可以直接從$PATH
列出目錄。在括號限制在一個命令的效果,所以用:(...) | grep ...
(IFS=': '; ls -1 $PATH)
標籤標籤Ÿ
對於我的設置,我只需要點擊一次標籤 – 2015-09-16 16:55:13
類似@ghoti,但使用find:
#!/bin/sh
for d in ${PATH//:/ }; do
find $d -maxdepth 1 -type f -executable
done
Bash使用名爲'complete'的內置命令來實現選項卡功能。
我沒有細節的手,但應該告訴你所有你需要知道:
help complete
(IFS=':'; find $PATH -maxdepth 1 -type f -executable -exec basename {} \; | sort | uniq)
它不包括shell內建雖然。
的答案刪除了,我最喜歡它,所以我想重貼一次:
compgen是當然更好
echo $PATH | tr ':' '\n' | xargs -n 1 ls -1
我發現這是最典型的外殼的東西,我認爲它也適用於其他外殼(我懷疑與IFS=':'
東西懷疑)
顯然,有可能是問題,如果該文件不是一個前不可改變,但我認爲對於我的問題,這就足夠了 - 我只想輸入grep
- 這意味着要搜索一些命令。
列出您的PATH variable
(ls中的所有目錄)中的所有文件。默認的用戶和系統命令將分別位於/ bin和/ sbin中,但在安裝某些軟件時,我們會將它們添加到某個目錄並使用PATH變量進行鏈接。
- 1. 如何獲取所有當前可用的命令和熱鍵列表?
- 2. 如何從shell中獲取有關Android shell中可用命令的信息?
- 3. 如何獲取寶石上可用的命令列表?
- 4. 如何在可可中運行shell命令並獲取輸出?
- 5. 使用bzr命令獲取所有bazaar(bzr)分支列表
- 6. 獲取從命令所有的bash子shell在PHP
- 7. git列出所有可用的命令
- 8. 我使用什麼命令獲取Redis中所有列表的列表?
- 9. 我在哪裏可以獲得所有Robotium命令的列表?
- 10. 獲取SHELL腳本中命令內的列表元素
- 11. 如何獲取Yocto中所有可用目標的列表?
- 12. WP7如何獲取所有可用字體的列表
- 13. 如何獲取所有可用的perl模塊列表
- 14. 如何獲取所有可用的wifi連接列表?
- 15. Redis命令獲取pub/sub的所有可用頻道?
- 16. Redis命令獲取Redis集羣上的所有可用密鑰?
- 17. 如何列出卡上所有可用的上下文命令?
- 18. 獲取Shell命令的結果C
- 19. Python:獲取shell命令的輸出'history'
- 20. 獲取子shell命令的pid
- 21. 獲取「getprop | grep」shell命令的輸出
- 22. 如何獲得乳膠文檔上的可用命令列表?
- 23. 如何獲取具有標識列的所有表的列表
- 24. 使用shell命令如何提取從命令(ZDB)字段
- 25. Redis命令獲取所有可用密鑰?
- 26. shell命令捕獲
- 27. 如何獲取使用Document.execCommand()執行的命令列表
- 28. 如何捕獲命令行中的所有命令和輸出?
- 29. 獲取可用命令的完整列表DTE.ExecuteCommand
- 30. 如何獲取所有賣家列表?
下面的答案告訴你如何。我想如果你告訴我們爲什麼你會受益更多。 – 2012-04-01 11:38:41
[Linux命令列出所有可用的命令和別名的可能的重複](http://stackoverflow.com/questions/948008/linux-command-to-list-all-available-commands-and-aliases) – camh 2013-08-17 06:48:50