我已經閱讀了網上我能找到的每一個答案。沒有什么與我的問題相似,所以這里是:
我有一個帶有 curl 的 bash 腳本,我得到了一個變數。我想用這個變數更新我的資料庫,但是它不起作用。
我的變數是 $stream,無論我做什么,我總是將“$stream”這個詞輸入資料庫,而不是 curl 的結果。
我的腳本是:
#!/bin/bash
stream=$(curl --silent "https://player.mediaklikk.hu/playernew/player.php?video=mtv1live&noflash=yes&output=vast&unviewed_position_start=1&env=vp&impl=s&correlator=&osfamily=Windows&osversion=10&browsername=Chrome&browserversion=97.0.4692.99&title=M1&contentid=mtv1live&embedded=0" | grep -Po 'file": "\K(.*?)(?=")' | sed 's/\\\/\\\//https:\\\/\\\//g')
echo $stream
mysql
use mydatabase;
UPDATE my_table SET my_url = "$stream" WHERE my_name = 'stream_name';
uj5u.com熱心網友回復:
您可以使用該-e選項來執行查詢。將其放在雙引號中,變數將被擴展。
#!/bin/bash
stream=$(curl --silent "https://player.mediaklikk.hu/playernew/player.php?video=mtv1live&noflash=yes&output=vast&unviewed_position_start=1&env=vp&impl=s&correlator=&osfamily=Windows&osversion=10&browsername=Chrome&browserversion=97.0.4692.99&title=M1&contentid=mtv1live&embedded=0" | grep -Po 'file": "\K(.*?)(?=")' | sed 's/\\\/\\\//https:\\\/\\\//g')
echo $stream
mysql mydatabase -e "UPDATE my_table SET my_url = '$stream' WHERE my_name = 'stream_name';"
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/421589.html
標籤:
