bash出力をファイルに記録する

bash出力をファイルに記録する

vlcをビルドしようとしていますが、かなり複雑で正しいパッケージをインストールする必要がありますが、エラーが発生し続けます。すべてのステップを追跡するために、シェルと対話するときに実行されている操作をログファイルに出力したいと思います。

役に立つ答えに基づいてこの問題

次のように入力して昇格するように求められました。

(sudo bash) | tee -a vlc_attempt.log

残念ながら、出力にパスヒントは含まれていません。入力と出力を区別するためにこれを見たかったのです。

私はstderrをstdoutに配管しようとしましたが、その逆も同様です。どちらの方法も間違った結果を生成しますが、ファイルに何も入れません。これは、lxterminalをteeにパイプするか、--command =オプションを使用してlxterminalを起動してから、上記のコマンド例を引用符で囲むのと同じです。ここでどこに行くべきですか?

答え1

script(1)端末に送信されたすべての内容を記録するために使用されます。

$ script
Script started, file is typescript
$ # do your work
...
$ # then exit with ^D
$ exit
Script done, file is typescript

後で次のコマンドを使用して出力を表示できますless

$ less -r typescript

ログには、ANSIの色やシェルプロンプトから送信されたその他のエントリなど、端末に送信されたすべての制御文字が含まれています。ログに制御文字を含めたくない場合は、PS1実行する前にジョブを単純化したり、出力を削除したりするscriptなどの方法を使用できます。stripansi(1)

関連情報