在shell指令碼開發過程中,針對變數的單引號(『)和雙引號(「)都是有應用場景的,根據我的經驗總結起來就是:
獲取變數值的時候就使用雙引號(「),這是基本用法。
如果是在指令碼中要編寫乙個新的指令碼,同時這個新的指令碼中還需要包含變數,你就可以選擇使用單引號(『)了,特別是生成乙個臨時的expect指令碼時,單引號(『)就會經常使用到的。
sqoop import \
--connect \
jdbc:mysql://localhost:3306/uniondrug_activity_dev \
--username \
root \
--password-file \
/tmp/.mysql_test_password \
--table \
activity2_product_quantity \
--where \
"date > '$1' and date > '$2'" \
--driver \
'com.mysql.jdbc.driver' \
--hive-import \
--target-dir \
/warehouse/test.db/sqoop_actity13_option/ \
--hive-table \
test.sqoop_actity13_option \
--delete-target-dir
shell指令碼單 雙引號問題描述
工作中常用到shell指令碼,遇到了乙個疑惑,求解。常見的解釋 單引號字串的限制 雙引號的優點 圖一與之類似的指令碼,用雙引號表示 第18行 6 9四行是str.txt內容 為了 方便,copy到一起顯示 圖二 輸出指令碼 雙引號 單引號 沒有引號結果如下圖 紅圈圈起來的部分。結果是 雙引號括起來的...
shell指令碼中單雙引號疑惑
工作中常用到shell指令碼,遇到了乙個疑惑,求解。常見的解釋 單引號字串的限制 雙引號的優點 圖一與之類似的指令碼,用雙引號表示 第18行 6 9四行是str.txt內容 為了 方便,copy到一起顯示 圖二 輸出指令碼 雙引號 單引號 沒有引號結果如下圖 紅圈圈起來的部分。結果是 雙引號括起來的...
shell指令碼中單引號和雙引號
shell指令碼中的單引號和雙引號一樣都是字串的界定符,而不是字元的界定符。單引號用於保持引號內所有字元的字面值,即使引號內的 和回車也不例外,但是字串中不能出現單引號。注意是所有,只是單引號本身不能夠出現在其中 雙引號用於保持引號內所有字元的字面值 回車也不例外 但以下情況除外 反引號位 位於鍵盤...