分页: 1 / 1
[請益]關於bash語法
发表于 : 2014-10-30 16:31
由 閒逛達人
請問各位前輩
下列是再uck環境下所執行的語法
小弟不太懂後面所執行的敘述
請問前輩們下面流程是如何執行的
$3 = four.sh
sudo uck-remaster-chroot-rootfs ~/tmp /bin/bash -c "./one.sh $3;rm ./one.sh;rm ./three.sh"
Re: [請益]關於bash語法
发表于 : 2014-10-30 19:08
由 astolia
歡迎來自臺灣的朋友。
uck-remaster-chroot-rootfs本身是個bash script,所以可以直接用cat查看,也可以用bash -x來執行,即
代码: 全选
sudo bash -x /usr/bin/uck-remaster-chroot-rootfs ~/tmp /bin/bash -c "./one.sh $3;rm ./one.sh;rm ./three.sh"
簡單地說,流程如下:
1、把一些必要的系統文件複製到~/tmp下,構建出一個可用的chroot環境
2、再執行chroot ~/tmp /bin/bash -c "./one.sh $3;rm ./one.sh;rm ./three.sh",即以~/tmp爲新的根目錄用bash依次執行/one.sh $3;rm ./one.sh;rm ./three.sh
3、最後做一些清理工作
Re: [請益]關於bash語法
发表于 : 2014-10-31 9:18
由 閒逛達人
謝謝astolia大大的解說
我比較困惑的地方是"./one.sh $3;rm ./one.sh;rm ./three.sh"
第一次先執行one.sh 接著執行$3 最後刪除兩個檔案
但後續為什麼又要再執行一次一次one.sh呢?
還是我理解錯誤呢?
麻煩前輩提點了
Re: [請益]關於bash語法
发表于 : 2014-10-31 9:44
由 astolia
"./one.sh $3;rm ./one.sh;rm ./three.sh"按;分割開來就是
代码: 全选
./one.sh $3
rm ./one.sh
rm ./three.sh
先是把$3即four.sh作為參數來執行one.sh,four.sh到底有沒有被執行要看one.sh的内容
然後是刪除one.sh和three.sh兩個檔案
單從你提供的指令中我並沒有看到後續再次執行one.sh的代碼,如果那只是一系列命令中的一部分,請把其餘的也一併貼出來
Re: [請益]關於bash語法
发表于 : 2014-10-31 16:05
由 閒逛達人
謝謝astolia大大的提點
小弟受惠良多:)