2

変数のリストをテキスト ファイルから単純な bash コマンドに渡したいと考えています。基本的に、すべての Linux コマンド (commands.txt) のリストがあります。そのファイルの各コマンド (それぞれが新しい行にあります) を man コマンドに渡し、それぞれを新しい .txt ファイルに出力して、各変数がこれに渡されるようにします。

man $command > $command.txt

そのため、各変数の man ページがその名前 .txt に出力されます。助けてください!これをbashスクリプトで実行したいのですが、うまくいくものなら何でもいただければ幸いです。

4

2 に答える 2

2

組み込みコマンドを使用read:

cat commands.txt | while read command; do
  man $command > $command.txt
done
于 2012-12-11T17:15:39.657 に答える
1

man ページの出力を次のようなファイルにリダイレクトすることはできません。

man man > man.txt # DON'T DO THIS

上記の問題は、出力された man.txt ファイルに多くの余分なフォーマット文字も含まれることです。

スクリプトを書く正しい方法は次のとおりです。

while read command; do
   man $command | col -b > $command.txt
done < commands.txt

col -bすべてのフォーマット文字を削除するためにここで使用することに注意してください。

于 2012-12-11T17:26:58.090 に答える