Laman » bagaimana untuk » Cara Simpan Output Perintah ke Fail di Bash (aka Terminal Linux dan macOS)

    Cara Simpan Output Perintah ke Fail di Bash (aka Terminal Linux dan macOS)

    Apabila anda menjalankan arahan pada prompt bash, ia biasanya mencetak output arahan itu terus ke terminal supaya anda dapat membacanya dengan segera. Tetapi bash juga membolehkan anda "mengalihkan" output sebarang arahan, menyimpannya ke fail teks supaya anda boleh menyemak output kemudian.

    Ini berfungsi dalam bash pada mana-mana sistem operasi, dari Linux dan macOS ke persekitaran bash berbasis Ubuntu Windows 10.

    Pilihan Satu: Mengalihkan Output ke Fail Sahaja

    Untuk menggunakan pengalihan bash, anda menjalankan arahan, nyatakan > atau >> pengendali, dan kemudian sediakan laluan fail yang anda mahu output dialihkan semula.

    •  > mengalihkan output perintah ke fail, menggantikan kandungan yang ada pada fail tersebut.
    •  >> mengarahkan output perintah ke file, menambahkan output ke isi file yang ada.

    Secara teknikal, peralihan ini "stdout" - output standard, iaitu skrin-ke fail.

    Berikut adalah contoh mudah. The ls arahan senarai fail dan folder dalam direktori semasa. So. apabila anda menjalankan arahan berikut, ls akan menyenaraikan fail dan folder dalam direktori semasa. Tetapi ia tidak akan mencetaknya ke skrin-ia akan menyimpannya ke fail yang anda tentukan.

    ls> / path / to / file

    Anda tidak perlu menentukan jalan ke fail yang sedia ada. Tentukan mana-mana laluan yang sah dan bash akan membuat fail di lokasi tersebut.

    Jika anda melihat kandungan fail, anda akan melihatnya ls output arahan. Sebagai contoh, kucing arahan mencetak kandungan fail ke terminal:

    cat / path / to / file

    Ingat, yang >  pengendali menggantikan kandungan fail sedia ada dengan output arahan. Jika anda ingin menyimpan output beberapa arahan ke satu fail, anda akan menggunakannya >> pengendali sebaliknya. Contohnya, arahan berikut akan memasukkan maklumat sistem kepada fail yang anda tentukan:

    uname -a >> / path / to / file

    Sekiranya fail itu tidak wujud, bash akan membuat fail. Jika tidak, bash akan meninggalkan kandungan sedia ada fail sahaja dan menambahkan output ke akhir fail.

    Apabila anda melihat kandungan fail, anda akan melihat keputusan arahan kedua anda dilampirkan ke akhir fail:

    Anda boleh mengulangi proses ini sebanyak yang anda suka untuk mengekalkan output pada akhir fail.

    Pilihan Dua: Output Cetak Secara Biasanya dan Redirect ke Fail

    Anda mungkin tidak suka mengalihkan output dengan > atau >> pengendali, kerana anda tidak akan melihat output arahan di terminal. Itulah yang tee perintah untuk. Arahan tee mencetak input yang diterima ke skrin dan menyimpannya pada fail pada masa yang sama.

    Untuk paip output arahan untuk tee, mencetaknya ke skrin anda dan menyimpannya ke fail, gunakan sintaks berikut:

    perintah | tee / path / to / file

    Ini akan menggantikan apa-apa dalam fail dengan output arahan, sama seperti > pengendali.

    Untuk paip output arahan untuk tee , mencetak ke skrin anda dan menyimpannya ke fail, tetapi menambahkannya ke akhir fail:

    perintah | tee -a / path / to / file

    Ini akan menambahkan output pada akhir fail, sama seperti >> pengendali.

    Bash shell termasuk beberapa operator tambahan dan lanjutan yang melaksanakan fungsi yang sama. Mereka akan berguna terutamanya jika anda menulis skrip bash. Rujuk bab Pengalihan I / O dalam Panduan Bash-Scripting Lanjutan untuk maklumat yang lebih terperinci.