shell和mysql使用總結

2021-07-05 09:08:46 字數 1106 閱讀 3801

1 判斷字串是否相等

if [空格$x空格=空格$y空格]; then

fi注意,=左右的空格必不可少

2 判斷整數是否相等,用-eq,不相等用-ne

3 ``跟$()都是執行shell命令的意思

4 日期函式

$(date +'%y-%m-%d %h:%m:%s')

用+指定格式,注意,+與後面的字串之間不能有空格

用-d指定時間運算,比如往前一天

$(date -d '-1 day')

一般-d都要結合 +使用,要指定返回格式的

$(date -d 'yesterday')

5 mysql 執行select返回結果如何獲取?

將命令放在$()中執行,然後返回結果賦給乙個變數

如果查詢了多列的話,這個變數將會是乙個字串,列印出來會看到依次是所有欄位名所有字段值,中間用空格分割

如果不需要欄位名,可以在執行mysql命令時,加上引數--skip-column-names

比如:result=$(mysql -h $ -p $ -u $ -p --default-character-set=utf8 --skip-column-names  -e "select x,y,z from tablename")

現在result是由空格分割的字段值組成的字串

將它轉成陣列,可以方便的 使用

轉陣列:arr=($result)

取陣列值:$,$

6 字串擷取

$7 時間戳轉換

如果是自己的命令,失敗原因不明確的可以用exit 2退出

10 在mysql語句用<< eof eof包圍時,對於字串變數,應該用雙引號包一下,例如"$字串變數",不能用單引號

11 想要看mysql具體是什麼語句在執行,可以用cat << eof eof來包含sql語句,這樣執行shell指令碼就會列印出來真正被執行的sql

12 數值運算,加減乘除,要寫在$(())中,否則會被當成字串

Shell使用總結 一

shell使用 s,c,d,f.5s指明了乙個為左對齊且寬度為5的字串替換 表示左對齊 如果沒有指明 則表示右對齊,寬度指定了保留給某個變數的字元數.對於浮點數,可以使用其他引數對小數部分進行捨入,例如 4.2f,其中.2指定保留2位小數.根據檔名或正規表示式搜尋 find path name cp...

Shell指令碼test命令使用總結和例項

shell中的 test 命令用於檢查某個條件是否成立,它可以進行數值 字元和檔案三個方面的測試。數值測試 引數說明 eq等於則為真 ne不等於則為真 gt大於則為真 ge大於等於則為真 lt小於則為真 le 小於等於則為真 例如 複製 如下 num1 100 num2 100 if test nu...

shell常見的使用總結

1.迴圈語句 for test scales in 1.0 1.0 1.5 2.0 do done 2.判斷語句 if test scales 1.0 1.5 2.0 then fi3.字串判斷 if 1x st a x the nif 1x sta x then if 1x s ta x th e...