各位前輩好
我最近遇到一個linux指令如下:
echo '{"key":"value"}' | home/example.py -f json
example.py中有使用stdin。
這個指令可以在python運行到stdin時讀入我們給予的那組json
請問關於這樣的指令("echo"和"|"的組合),要去哪裡找相關的資料研讀?
我在網上查到關於"echo"的說明都沒有提到這個用法
另外一般在terminal執行python3檔,都需在前面加個python3
python3 example.py
為何這個指令中不需要?
謝謝各位!
| 是管線符號,把管線左側的stdout餵給右側指令的stdin
只要在.py檔的第一行加入(example)
#!/usr/bin/env python3
並chmod給這個py檔可執行的屬性(+x),系統即可在執行時,以這一行所指示的主執行程式去執行,就不需要在console $之後再加python2或3了..
其實你的疑問, 都屬於 Linux Shell 的功能,
把 Shell 功能和指令看熟, 就會知道如何應用: