
私は Linux の初心者です。10 回実行され、そのたびに 1 行ずつ印刷されるループを含む Python プログラムを作成しました。それを printing.py として保存しました。今度は、ターミナルを使用して、印刷結果が新しいファイルに保存されるようにしたいと思います。
私が使用するコードは次のとおりです:
counter = 1
while counter <= 10:
print("This is line", counter)
counter = counter +1
しかし、ターミナル経由で printing.py として保存したプログラムから新しいファイル「result」を取得する方法がわかりません。
答え1
> 演算子を使用してプログラムの出力をリダイレクトできます。出力はターミナルではなく指定されたファイルに書き込まれます。
python3 printing.py > result
テキストは追加されるのではなく、ファイルの現在の内容が置き換えられることに注意してください。出力をファイルに追加する場合は、>> 演算子を使用します。
ターミナルに出力する方法もありますそしてファイルに出力して、何が起こっているか確認します。出力をコマンドにパイプするだけですティーそして、それを端末とファイルに出力します。このコマンドは、入力を 2 つの出力にリダイレクトする T 字型のパイプとして考えることができます。
python3 printing.py | tee result
繰り返しますが、これによりファイルの現在の内容が上書きされます。
答え2
以下をコピーしてtest.pyファイルに貼り付けます。
#!/usr/bin/env python3
#
counter = 1
while counter <= 10:
print("This is line", counter)
counter = counter + 1
コマンドを実行します
chmod +x test.py
./test.py > output.txt
出力は
This is line 1
This is line 2
This is line 3
This is line 4
This is line 5
This is line 6
This is line 7
This is line 8
This is line 9
This is line 10