linux shell 输出到数据库,linux shell 入门
利用vi等文本編輯器編寫Shell腳本的格式是固定的,如下:
Yourcommandsgohere
chmod+xfilename.sh
下面我們從經(jīng)典的“helloworld”入手,看一看最簡單的Shell腳本的模樣。
a="helloworld"
variable_name=variable_value
就不會輸出“Hi,helloworlds”,而是輸出“Hi,”。這是因為Shell把$as當成一個變量,而$as未被賦值,其值為空。正確的方法是:
關(guān)于變量,還需要知道幾個與其相關(guān)的Linux命令。
!/#argumentsPrintif-lt;<<<>filesrenEXAMPLE:.in*9'HTM.1213OLD="NEW="#17commandfilesfor*doif[-f"23`"$file"s/${OLD}/${NEW}/g24[-f"25"27"mv""fi31if…;then
…
fi
[$a-lt3]判斷$a的值是否小于3,同樣-gt和-le分別表示大于或小于等于
["$a"="$b"]判斷$a和$b的取值是否相等
$#表示包括$0在內(nèi)的命令行參數(shù)的個數(shù)。在Shell中,腳本名稱本身是$0,剩下的依次是$0、$1、$2…、${10}、${11},等等。$*表示整個參數(shù)列表,不包括$0,也就是說不包括文件名的參數(shù)列表。
十四、十五兩句是賦值語句,分別將第一和第二參數(shù)賦值給變量OLD和NEW。緊接下來的兩句是注釋,注釋下面的兩條shift的作用是將參數(shù)列表中的第一個和第二個參數(shù)刪除,后面的參數(shù)依次變?yōu)樾碌牡谝缓偷诙?shù),注意參數(shù)列表原本也不包括$0。
…
…
…
…
通過這個例子我們明白了ShellScript的編寫規(guī)則,但還有幾件事情需要講述一下。
pattern1)
…;;
esac<
do
ehco"$COPIES";;
esac
getoptsoption_stringvariableoption_string中包含一串單字符選項,若getopts在命令行參數(shù)中發(fā)現(xiàn)了連字符,那么它會將連字符之后的字符與option_string進行比較,若匹配成功,則把變量variable的值設(shè)為該選項,若無匹配,則把變量的值設(shè)為?。有時候,選項還會帶一個值,例如-c5等,這時要在option_string中該選項字母后面加上一個冒號,getopts發(fā)現(xiàn)冒號后,會讀取該值,然后將該值放入特殊變量OPTARG中。這個命令比較復(fù)雜,如有需要,讀者可以詳細參閱Shell編寫的相關(guān)資料。
selectvarin…;do
例如,下面這段程序的輸出是:
selectvarin"a""b""c";do
echo$var
1)a
第三,ShellScript中也可以使用自定義的函數(shù),其語法形式如下:
…
第四,我們也可以在Shell下調(diào)試ShellScript腳本,當然最簡單的方法就是用echo輸出查看變量取值了。Bash也提供了真正的調(diào)試方法,就是執(zhí)行腳本的時候用-x參數(shù)。sh?xfilename.sh這會執(zhí)行腳本并顯示腳本中所有變量的取值,也可以使用參數(shù)-n,它并不執(zhí)行腳本,只是返回所有的語法錯誤。
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的linux shell 输出到数据库,linux shell 入门的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux中popen汉字乱码,Pyth
- 下一篇: linux dns中文域名,Nginx