現在、LinuxでのGCSEコンピューティング制御評価の準備をしています。私はタイプする ls > list
およびls >> list
をコマンドラインに入力しますが、何もしません。私はそれをグーグルで調べました、しかしそれが正確に何をするかを見つけることができません。
何が:
ls > list
そして
ls >> list
行う?
どちらもstdoutをファイルにリダイレクトします。
ls > list
ファイルが存在する場合は置き換えられます。
ls >> list
ファイルが存在しない場合は作成されます。存在する場合は、ファイルの最後に追加されます。
詳細: IO Redirection
この:
ls > list
は、ls
コマンドからの出力をcreatelist
という新しいファイルにリダイレクトすることを意味します。ファイルがすでに存在する場合は、replaceです。
一方
ls >> list
ls
コマンドとappendからの出力をlist
というファイルにリダイレクトすることを意味します。ファイルが存在しない場合はcreate it 。
通常>
は、既存のファイルを消去しても問題がない場合に使用されます。これは、出力が最新の現在の状態に基づいて継続的にファイルを上書きすることを意味します。たとえば、プログラムをテストするたびに、前のテスト出力を上書きする可能性があります。
通常>>
は、ロギングイベント、解析、またはデータが1つずつ作成されたり、新しいフォームに変換されたりするその他のデータ処理などの項目に使用されます。
どちらのコマンドも、ls
コマンドの出力をlist
という名前のファイルにリダイレクトします。 >
は、出力ファイルをlist
という名前で作成/置換します。 >>
は、ファイルlist
がまだ存在しない場合に作成またはファイルlist
を追加します。 cat list
を使用して、ファイルlist
の内容を表示できます。