2
我正在使用此腳本生成系統中帶有手冊頁的可用命令列表。用time
運行這個程序在我的電腦上顯示平均約49秒。優化用手冊頁列出可用命令的腳本
#!/usr/local/bin/bash
for x in $(for f in $(compgen -c); do which $f; done | sort -u); do
dir=$(dirname $x)
cmd=$(basename $x)
if [[ ! $(man --path "$cmd" 2>&1) =~ 'No manual entry' ]]; then
printf '%b\n' "${dir}:\n${cmd}"
fi
done | awk '!x[$0]++'
有沒有辦法來優化這對於更快的結果?
這是我當前輸出的一個小樣本。目標是按目錄對命令進行分組。這將在稍後被輸入到一個數組中。
/bin: # directories generated by $dir
[ # commands generated by $cmd (compgen output)
cat
chmod
cp
csh
date