• ベストアンサー

コマンド一覧を取得するには?

「実行可能なコマンド一覧を出力する」コマンドはありますでしょうか? 個人的には,「~wm」という文字列で終わるコマンドを調べたいのですが,そのためにコマンド一覧からgrepで検索しようと思いました. よろしくお願いいたします.

質問者が選んだベストアンサー

  • ベストアンサー
  • mac_res
  • ベストアンサー率36% (568/1571)
回答No.1

$PATHのなかから実行可能なものをリストするスクリプトです。 ちなみに私の場合wmで終わるものは、 /usr/bin/pbmtocmuwm /usr/bin/gnome-wm /usr/bin/dh_installwm でした。 -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- #! /bin/sh echo $PATH | awk -F: ' { for (i = 1; i <= NF; i++) { printf("find %s -type f -ls\n", $i); } }' | sh | awk ' $3 ~ /x/ { print $NF }'

その他の回答 (5)

  • notnot
  • ベストアンサー率47% (4900/10360)
回答No.6

locate wm | grep 'wm$' | while read a do test -f $a -a -x $a && echo $a done wm を含むファイル名の一覧から、wmで終わるファイルを探し、それがディレクトリでなくて実行可能なら表示します。

keydaimon
質問者

お礼

ご回答くださった皆さん、ご返事ありがとうございました! いろいろ試すにつけ、興味がたくさんわいてきました。この場を借りて御礼を申し上げたいと思います。ありがとうございました。

  • jikenjp
  • ベストアンサー率38% (5/13)
回答No.5

mac_res 様、はじめまして。もし、暇でしたら、下記実行してみて頂けると、ありがたいです。 "locate" コマンドが見に行くファイルの更新。 date 04270401 とすると、一分後に、作ります。(毎日、4時2分、通電していれば ...) 実は、昨日"OS"上げてしまったので、FC4より過去の "OS"で確認できなくなってしまいました。

  • mac_res
  • ベストアンサー率36% (568/1571)
回答No.4

#2さん。私の環境で実行すると、 $ find `locate wm` -name '*wm' -print -bash: /usr/bin/find: 引数リストが長すぎます となってしまいます。 っとこれだけではなんですので、-permをいただいて修正版を書きました。 -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- #! /bin/sh echo $PATH | awk -F: ' { for (i = 1; i <= NF; i++) { printf("find %s -type f -perm +111 -print\n", $i); } }' | sh

  • jikenjp
  • ベストアンサー率38% (5/13)
回答No.3

No2:です。すいません、ぼけてました。 -perm +111 を間にいれてねー

  • jikenjp
  • ベストアンサー率38% (5/13)
回答No.2

こんにちはー。 こんなの、どうですか? find `locate wm` -name '*wm' -print (` は、アットマークの上、 ' は、 7 の上:目が悪いと同じに見えますねー)

関連するQ&A

専門家に質問してみよう