Menulis output layar ke file di baris perintah

3

Saya menggunakan perintah berikut untuk menjalankan aplikasi saya:

screen node cam.js 

Yang ingin saya lakukan adalah menulis output ke file log untuk menangkap kesalahan tertentu yang terjadi dan saya perlu memiliki log untuk menemukan penyebabnya. Saya mencoba menggunakan:

screen node cam.js > output.txt

dan

screen "node cam.js > output.txt"

Saya pikir itu tidak berfungsi karena layar. Apa yang saya lewatkan? Saya tidak terlalu berpengalaman dengan Ubuntu, tentu saja saya mencoba menggunakan Google, tetapi saya tidak akan bertanya apakah saya tidak dapat menemukan atau tanpa mencoba apa pun!

Fabian Pas
sumber
1
Apakah Anda benar-benar perlu menjalankan perintah itu screen? Layar menyediakan kemampuan untuk menggunakan dan beralih di antara beberapa konsol dalam satu konsol. Saya kira Anda ingin menjalankan skrip itu terus-menerus, kemudian lihat program yang disebut nohup man nohup. Tetapi hanya untuk pengujian, jika ada masalah dalam output, jalankan node secara langsung node cam.js > output.txt.
minggu
Jika apa yang Anda tangkap sebenarnya ditulis sebagai kesalahan (yaitu untuk kesalahan standar dan bukan standar keluar), Anda akan perlu menangkap output dari kesalahan standar, tidak hanya standar, seperti yang Anda tunjukkan saat ini.
Kazark
@ Minggu saya menjalankan aplikasi lain di sebelah aplikasi simpul saya.
Fabian Pas
@ Kazark Saya pikir kesalahan standar keluar, jika tidak saya akan mencoba sesuatu yang lain!
Fabian Pas

Jawaban:

3

Saya percaya bahwa jika Anda melihat halaman manual untuk layar (1), Anda akan menemukan bahwa ada parameter dan perintah layar yang menyediakan pembuatan file log dan mengaktifkan dan menonaktifkannya.

mdpc
sumber
1
Oh ya! Tidak memikirkan itu! layar -L melakukannya untuk saya!
Fabian Pas
2

mdpc benar, dan opsi saat layar mulai adalah screen -L.

Dari dalam layar, C-a Hmenyalakan atau mematikan logging. File log akan disebut screenlog.N (di mana N adalah bilangan bulat).

pengguna55325
sumber