所以我需要從一個文件中讀取一串ID號碼並在它們每個上執行一次mysql查詢。我開始與此:從bash腳本查詢mysql
#!/bin/bash
file="eidlist.txt"
while IFS= read -r line
do
mysql --host <redacted> --user <redacted> --password=<redacted> -N -e "use netops;select m_mailname from footprints where m_empno=$line;"
done <"$file"
這工作併產生預期的輸出。現在我需要做同樣的事情,但使用不同的ID列表,查詢不同的字段。因爲現在我查詢的字段包含字母數字值(而前一個是完全數字小),我需要包圍在MySQL查詢字符串引號的價值,這是我與\」像這樣逃脫
#!/bin/bash
file="pidlist0.txt"
while IFS= read -r line
do
mysql --host <redacted> --user <redacted> --password=<redacted> -N -e "use netops;select m_mailname from footprints where m_stuid=\"$line\";"
done <"$file"
這是行不通的 - 腳本沒有輸出,我做錯了什麼?
當我在命令行測試mysql命令時(將$ line變量預先填充到其中一個值文件),它可以工作,但是當從腳本內部運行時,它不產生輸出。發生了什麼?
請給出確切的mysql命令,在你的命令行中沒問題。 –