shell腳本傳入多個(gè)參數(shù) find的exec怎么一次執(zhí)行多個(gè)命令?
find的exec怎么一次執(zhí)行多個(gè)命令?在 Linux 系統(tǒng)中,如果你使用 find 命令查找到一個(gè)文件,并使用 -exec 參數(shù)執(zhí)行相應(yīng)的 Linux 命令,只要你的命令語法本身是正確的,那么你就可
find的exec怎么一次執(zhí)行多個(gè)命令?
在 Linux 系統(tǒng)中,如果你使用 find 命令查找到一個(gè)文件,并使用 -exec 參數(shù)執(zhí)行相應(yīng)的 Linux 命令,只要你的命令語法本身是正確的,那么你就可以編寫一個(gè) SHELL 程序,Linux 系統(tǒng)就會(huì)自動(dòng)執(zhí)行多個(gè)命令了。
具體的 exec 格式的用法很復(fù)雜,你可以參考其他文檔。
shell腳本 通配符參數(shù)?
通配符參數(shù)有如下,?匹配一個(gè)任意字符,*匹配零個(gè)或任意多個(gè)任意字符等。
shell腳本中的$*,$@和$#是什么意思?
舉例說:腳本名稱叫 入?yún)⑷齻€(gè): 1 2 3運(yùn)行 1 2 3后$*為1 2 3(一起被引號(hào)包?。?@為1 2 3(分別被包?。?#為3(參數(shù)數(shù)量)
Shell腳本啟動(dòng)如何傳遞參數(shù)?
Shell腳本如何傳遞參數(shù)有如下2種方法:
1、$0,$1,$2 通過命令行傳遞參數(shù)采用$0,$1,$2..等獲取腳本命令行傳入的參數(shù),$0獲取到的是腳本路徑以及腳本名,后面按順序獲取參數(shù)。
example:腳本例子
#!/bin/bash
echo Shell name $0
echo Shell第一個(gè)參數(shù)$1
echo Shell第二個(gè)參數(shù)$2
在Linux shell中執(zhí)行腳本,結(jié)果如下:
2、getopts傳遞參數(shù)
語法格式:getopts [option[:]] [DESCPRITION] VARIABLE
option:表示為某個(gè)腳本可以使用的選項(xiàng)
::如果某個(gè)選項(xiàng)(option)后面出現(xiàn)了冒號(hào)(:),則表示這個(gè)選項(xiàng)后面可以接參數(shù)(即一段描述信息DESCPRITION)
VARIABLE:表示將某個(gè)選項(xiàng)保存在變量VARIABLE中
example:腳本例子:
在shell中執(zhí)行腳本,結(jié)果如下:
以上就是shell腳本如何傳遞參數(shù)的2種方法,希望對(duì)你了解有幫助!
Shell eval使用類型?
可以使用eval命令。eval命令,如同熟悉的其他腳本語言,會(huì)將它的參數(shù)做為命令執(zhí)行。eval命令將會(huì)首先掃描命令行進(jìn)行所有的替換,然后再執(zhí)行命令。該命令使用于那些一次掃描無法實(shí)現(xiàn)其功能的變量。該命令對(duì)變量進(jìn)行兩次掃描。這些需要進(jìn)行兩次掃描的變量有時(shí)候被稱為復(fù)雜變量。 命令格式:eval [參數(shù)] 補(bǔ)充說明:eval可讀取一連串的參數(shù),然后再依參數(shù)本身的特性來執(zhí)行。參數(shù)不限數(shù)目,彼此之間用分號(hào)分開。 用法示例: 將字符串變量s的值作為命令執(zhí)行 sls eval $s