我有這個 Unix 腳本,我正在嘗試將它翻譯成 Python。問題是我不懂 Unix,也不知道它是什么意思。
這是代碼:
1 17-23 * * * curl -X PUT -d EM_OperatingMode=10 --header 'Auth-Token: 512532eb-0d57-4a59-8da0-e1e136945ee8' http://192.168.1.70:80/api/v2/configurations
uj5u.com熱心網友回復:
你拿的代碼在Unix系統的crontab里。讓我們將代碼分成兩部分。
第一部分,1 17-23 * * * ,代表一個時間表。這意味著在 17:00 到 23:00 之間,程式在該小時的第一分鐘每小時運行一次。Crontab 遵循最小小時日月作業日。(請參閱crontab 大師。)
第二部分curl -X PUT -d EM_OperatingMode=10 --header 'Auth-Token: 512532eb-0d57-4a59-8da0-e1e136945ee8' http://192.168.1.70:80/api/v2/configurations表示對 URL 的 PUT 請求。
curl 是一個用于與服務器通信的程式。您使用瀏覽器與服務器進行互動的權利。您可以將 curl 視為執行相同操作的命令列工具。該引數包含更新服務器中資料的 PUT 請求。這里EM_OperationMode=10被傳遞到服務器進行更新。--header表示要發送到 URL 的引數。此處將向 URL 發送身份驗證令牌以驗證其訪問權限。最后,通信的 URL 是http://192.168.1.70:80/api/v2/configurations。
因此,按照我上面提到的時間表,該值將被傳遞到 192.168.1.70 的服務器。您可以使用 Python requests 庫來復制服務器通信,同時您可以保留調度程式以呼叫 python 程式以按照相同的計劃運行它。
uj5u.com熱心網友回復:
似乎是 cron 作業在給定的時間間隔內自動運行給定的命令:“從 17 到 23 每小時的第 1 分鐘。”
類似的 Python 代碼將是
import requests
requests.put(
"http://192.168.1.70:80/api/v2/configurations",
data={"EM_OperatingMode":10},
headers={"Auth-Token":"512532eb-0d57-4a59-8da0-e1e136945ee8"}
)
uj5u.com熱心網友回復:
它是crontab,例如:
* * * * * Command_to_execute
| | | | |
| | | | Day of the Week ( 0 - 6 ) ( Sunday = 0 )
| | | |
| | | Month ( 1 - 12 )
| | |
| | Day of Month ( 1 - 31 )
| |
| Hour ( 0 - 23 )
|
Min ( 0 - 59 )
這是來源:https ://www.tutorialspoint.com/unix_commands/crontab.htm
第二部分是curl一些選項(標志):https ://curl.se/docs/manpage.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/517840.html
標籤:Unix
上一篇:使用sed決議檔案
