shell指令碼中單雙引號問題

2021-10-01 22:47:24 字數 747 閱讀 7250

在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指令碼中的單引號和雙引號一樣都是字串的界定符,而不是字元的界定符。單引號用於保持引號內所有字元的字面值,即使引號內的 和回車也不例外,但是字串中不能出現單引號。注意是所有,只是單引號本身不能夠出現在其中 雙引號用於保持引號內所有字元的字面值 回車也不例外 但以下情況除外 反引號位 位於鍵盤...