salt ssh單引號轉義問題解決

2021-08-18 21:01:49 字數 844 閱讀 2708

今天寫salt-ssh指令碼的時候遇到個小問題,問題如下:

1、mysql資料庫使用者賦權操作

mysql>grant all privileges on *.* to  'repl'@'192.168.66.%'  identified by  'repl' ;

2、linux命令列下使用命令為mysql資料庫使用者賦權操作

#mysql -uroot -proot -e 「grant all privileges on *.* to  'repl'@'192.168.66.%'  identified by  'repl' ;」

3、salt-ssh 批量執行命令操作

#salt-ssh --roster-file='/etc/salt/abc' '*' -r 'cd /data/backup && rm -rf *'

4、如何使用salt-ssh命令執行mysql賦權操作?

簡單粗暴的拼湊存在單引號如何處理的問題。

#salt-ssh --roster-file='/etc/salt/abc' '*' -r 'mysql -uroot -proot -e "grant all privileges on *.* to  'repl'@'192.168.66.%'  identified by  'repl' ;"'

如何消除單引號的影響,答案使用雙引號幫忙,雙引號將單引號包住

salt-ssh --roster-file='/etc/salt/abc' '*' -r ' mysql -uroot -proot -e "grant all privileges on *.* to \"'repl'\"@\"'192.168.66.%'\" identified by \"'repl'\"; "' 

oracle單引號轉義字元

create or replace procedure p employee hire authid current user isvn ctn number 2 stmt sql varchar2 500 begin select count into vn ctn from user all t...

SQL 轉義字元 單引號

c 的轉義字元是 sql 的轉義字元是 單引號 例 select from tbl where uyear 06 請注意其中紅色背景的單引號,它即表示轉義字元,如果我們省略,則整個語句會出錯,轉義字元不會輸出,上例中 uyear 的實際條件值為 06,而不是 06 為什麼不能省略呢,假如我們省略,上...

SQL中單引號轉義

sql 的轉義字元是 單引號 例 select from tbl where uyear 06 請注意其中紅色背景的單引號,它即表示轉義字元,如果我們省略,則整個語句會出錯,轉義字元不會輸出,上例中 uyear 的實際條件值為 06,而不是 06 為什麼不能省略呢,假如我們省略,上句變成 selec...