[英]mac shell script loop run in background ignored
我在遍歷數組以打開程序的多個實例時遇到問題。 當我運行以下示例時,我得到三個fslview實例:
arr=(bold_rs_fabio_precuneus_mask.nii.gz mask.nii.gz bold_rs_fabio.nii.gz)
fslview ${arr[0]} &
fslview ${arr[1]} &
fslview ${arr[2]} &
在此示例中,我僅獲得加載了第一個文件的fslview實例:
arr=(bold_rs_fabio_precuneus_mask.nii.gz mask.nii.gz
bold_rs_fabio.nii.gz)
for f in $arr
do
fslview $f &
done
在第二個示例中我缺少什么?
預先感謝馬丁
也許您應該在循環中啟動一個新的shell:
arr=(bold_rs_fabio_precuneus_mask.nii.gz mask.nii.gz bold_rs_fabio.nii.gz)
for f in $arr
do
(fslview $f & )
done
或者嘗試構建命令行以實際並行運行進程
arr=(bold_rs_fabio_precuneus_mask.nii.gz mask.nii.gz bold_rs_fabio.nii.gz)
cmd=""
for f in $arr
do
cmd="$cmd fslview $f &"
done
#then let it run
$cmd
希望能幫助到你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.