bashに入れてからPythonに送信して、より多くの使用可能なテキストの断片があります。
だから私のコマンドラインは
cat input_file | sh bash_file.sh
私のshファイルは
#!/bin/sh
input_data=$(cat)
"$input_data" | python3 ./python_file.py
私のPythonファイルは
contents = sys.stdin.read()
print(contents)
しかし、実際にはコンテンツには何も保存されません。シェルスクリプトファイルに追加したものをPythonでどのように印刷できますか?
ベストアンサー1
$input_data
デフォルトでは正確ですが、標準入力として印刷しません。代わりにというコマンドを実行してみてください $input_data
。
printf
次のように、シェルスクリプトの最後の行を変更して変数の内容を印刷するために使用されます。
printf "%s" "$input_data" | python3 ./python_file.py