>
コマンドラインのコマンドの後に、または演算子を使用して、コマンド出力をファイルまたは他のコマンドにリダイレクトまたはパイプすることができます|
。出力をファイルにリダイレクトしたいのですが、リダイレクトする機会が得られないようなあまり標準的な状況に直面しています。
新しいターミナルに到着すると、
[chiliNUT ~]$
まず、何も入力せずに押すと、Tab次のメッセージが表示されます。
display all 1725 possibilities? (y or n)
これを入力すると、yさまざまなコマンドの長いリストが表示されます。この出力をファイルにリダイレクトまたはパイプするにはどうすればよいですか?> myfile.txt
どこにもこのような文章を書く機会がないようです。
使用CentOSバージョン6.4(最終バージョン)。
答え1
組み込み機能を使用できますcompgen
。
compgen: compgen [-abcdefgjksuv] [-o option] [-A action] [-G globpat]
[-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix]
[-S suffix] [word]
Display possible completions depending on the options.
Intended to be used from within a shell function generating possible
completions. If the optional WORD argument is supplied, matches against
WORD are generated.
Exit Status:
Returns success unless an invalid option is supplied or an error occurs.
TABプロンプトには、コマンド、シェル組み込み、キーワード、エイリアス、および機能が一覧表示されます。だからあなたは言うことができます:
compgen -cbka -A function | grep '^y' > myfile.txt
yTABシェルプロンプトでファイルを入力したときに表示されるすべてのオプションを取得しますmyfile.txt
。
grep
可能なすべてのコマンド、機能などをファイルに入れるには、パイプを取り外します。
compgen -cbka -A function > myfile.txt