欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
用source命令執行腳本和用sh執行腳本之間的區別

from http://blog.csdn.net/david_xtd/article/details/8012627

2012.09

問(wèn)題:

有很多方式可以執行腳本,

1)。source test.bsh

2)。. test.bsh

3)。chmod a+x test.bsh;./test.bsh

4)。sh test.bsh

它們之間的差別是什么?


解決辦法:

1. source命令的作用是讀取并執行test.bsh中的命令;

該命令經(jīng)常用點(diǎn)命令“.”來(lái)替代。

就是說(shuō),

# source test.bsh

# . test.bsh

的作用完全相同。

2. 用腳本文件名本身執行(如果shell腳本具有可執行權限)和用sh命令執行腳本的作用完全相同。

3. 用source命令執行腳本文件和用sh執行腳本文件的區別:

用source執行腳本文件,執行過(guò)程不另開(kāi)進(jìn)程,腳本文件中設定的變量在當前shell中可以看到;

用sh執行腳本文件,是在當前進(jìn)程另開(kāi)子進(jìn)程來(lái)執行腳本命令,腳本文件中設定的變量在當前shell中不能看到。


比如:

test.bsh的內容如下:

  1. #!/bin/bash  
  2. echo $$  
  3. tstvar=12345  

以下是上面四種不同方式執行結果的差異:
  1. dingq@wd-u1110:~/wrk/tmp$ echo $$  
  2. 2375  
  3. dingq@wd-u1110:~/wrk/tmp$ unset tstvar;source tst_sh.bsh;echo $tstvar  
  4. 2375  
  5. 12345  
  6. dingq@wd-u1110:~/wrk/tmp$ unset tstvar;. tst_sh.bsh;echo $tstvar  
  7. 2375  
  8. 12345  
  9. dingq@wd-u1110:~/wrk/tmp$ unset tstvar;./tst_sh.bsh;echo $tstvar  
  10. 5960  
  11.   
  12. dingq@wd-u1110:~/wrk/tmp$ unset tstvar;sh tst_sh.bsh;echo $tst_var  
  13. 5966  
  14.   
  15. dingq@wd-u1110:~/wrk/tmp$  

可以看到,當前進(jìn)程ID為2375,用source和點(diǎn)命令(.)執行腳本時(shí)不改變當前進(jìn)程,并且腳本中的變量可以看到;

而直接執行腳本文件和使用sh執行腳本時(shí)改變了當前進(jìn)程,并且腳本中的變量不能看到;


問(wèn)題解決。






本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
shell中的點(diǎn)命令與source命令的區別
linux計劃任務(wù)問(wèn)題:shell文件可以手動(dòng)執行,計劃任務(wù)卻一直失??!
Bash shell中bash、sh、source及“.”點(diǎn)等五種執行方式的區別與聯(lián)系
Shell腳本應用(一)
Linux下source命令詳解
bash與source
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久