grep config_initramfs_source .config
if [ `grep -v "^#" .config | grep "config_nuvoton_w55fa92_sm=m"` ]; then
echo "configure with nand"
cp -a drivers/scsi/nuvoton_nand/nanddrv.ko $rootfs/usr
else
echo "configure without nand"
if [ -f $rootfs/usr/nanddrv.ko ]; then
rm -f $rootfs/usr/nanddrv.ko
fifi
if [ `grep -v "^#" .config | grep "config_usb_file_storage=m"` ]; then
echo "configure with usbd mass storage"
cp -a drivers/usb/gadget/g_file_storage.ko $rootfs/usr
else
echo "configure without usbd mass storage"
if [ -f $rootfs/usr/g_file_storage.ko ]; then
rm -f $rootfs/usr/g_file_storage.ko
fifi
其中 if 判斷表示式中 「」 , 『』 , ` ` 符合很容易搞錯。
linux
中shell
變數$#,$@,$0,$1,$2
的含**釋:
變數說明:
$$
shell
本身的pid
(processid)
$!
shell
最後執行的後台
process
的pid
$? 最後執行的命令的結束**(返回值)
$- 使用
set命令設定的
flag一覽
$*
所有引數列表。如
"$*"用「"
」括起來的情況、以
"$1 $2
…$n"
的形式輸出所有引數。
$@ 所有引數列表。如
"$@"用「"
」括起來的情況、以
"$1" "$2"
…"$n"
的形式輸出所有引數。
$# 新增到
shell
的引數個數
$0 shell
本身的檔名 $1
~$n
新增到shell
的各引數值。
$1是第
1引數、
$2是第
2引數…。
shell 一些符號的使用
給你個全的,你在linux環境下多試下就明白了 0 這個程式的執行名字 n 這個程式的第n個引數值,n 1.9 這個程式的所有引數,此選項引數可超過9個。這個程式的引數個數 這個程式的pid 指令碼執行的當前程序id號 執行上乙個背景指令的pid 後台執行的最後乙個程序的程序id號 執行上乙個指令的...
shell語法 符號
行首以 開頭但後面沒有!的是注釋 用於指定直譯器 使用轉義符 後 不再表示注釋,而是字元echo the here does not begin a comment引數替換echo 這裡替換的規則還需要進一步學習 數制轉換 echo 2 101010 使用 可以在一行寫上兩個或兩個以上命令 if t...
shell符號解釋
符號詳解 在子shell中執行 a 1 echo a,結果是空,因為a 1不是在當前shell中執行的 a 1 echo a 也是空的 小技巧 cd path,do something 可以讓不切換當前目錄而在其它目錄幹點別的事兒 還有個功能是陣列的賦值 比如a 1 3 5 那麼 1 3 5,需要注...