Mengubah hala Output Standard (stdout) ke Fail dalam Python
Apabila berurusan dengan skrip Python yang berjalan lama yang mungkin di latar belakang semasa sesi SSH , adalah penting untuk mencari cara untuk mengelakkan ralat output yang disebabkan oleh sambungan SSH tertutup. Satu penyelesaian ialah mengubah hala stdout ke fail, memastikan aplikasi dan modulnya terus menulis output walaupun sesi ditutup.
Kaedah 1: Menggunakan sys.stdout
Satu kaedah melibatkan penugasan semula sys.stdout kepada objek fail:
import sys with open('somefile', 'w') as sys.stdout: print('test')
Sementara ini pendekatan mungkin kelihatan mudah, ia mungkin tidak menghalang semua modul luaran daripada keluar ke terminal.
Kaedah 2: Menggunakan Shell Redirection
Kaedah yang lebih biasa digunakan ialah menggunakan pengalihan shell apabila melaksanakan skrip Python. Ini berfungsi untuk kedua-dua sistem Windows dan Linux:
$ python3 foo.py > file
Dengan menggunakan ">" operator, stdout skrip akan diubah hala ke fail yang ditentukan, memastikan semua output ditangkap di sana dan bukannya pada terminal.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengalihkan Output Standard Python ke Fail untuk Mencegah Isu Sambungan SSH?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!