次のコマンドを順番に実行するためのガイドライン

次のコマンドを順番に実行するためのガイドライン

これら2つのコマンドを順番に実行しました。

cat a.log >> b.log
rm -r a.log

ここで何が起こっているのでしょうか?なぜ?ここで使用されますか? ~について>>ロゴ?何ですか -r(再帰)フラグ使っていますか?

ベストアンサー1

修正されたコードを考慮すると、

cat a.log >> b.log
rm -r a.log
  1. catファイルリストをコピーする標準入力-何も提供されていない場合、またはリストにダッシュ()が含まれている場合標準出力。バラよりman cat

  2. これは>>、コマンドの出力を指定されたファイルに追加する標準シェルリダイレクト演算子です。例では、この名前付きファイルはですb.log。そうでない場合は、man bashお気に入りのシェルのマニュアルを参照または確認してくださいbashシェルの制御およびリダイレクト演算子は何ですか?

  3. このrmコマンドは(ほぼ)無条件にファイルを削除しますa.log。ファイルを削除しようとするため、この-rフラグは無関係で無視されます。対話型セッションで実行される場合、コマンドはユーザーにファイルに書き込み権限がないことを確認するように要求します。バラよりman rm

このコードを書くと、次のように設定できます。

cat a.log >> b.log && rm -f a.log

a.logここでは、catその内容がターゲットファイルに正常に追加された場合にのみファイルが削除されますb.log

おすすめ記事