尝试使用通配符*查找目录中的文件,并将名称放入数组
文件具有相似的名称(MATCHr1,MATCHr2 ......)
当文件不存在时出现问题(这是可能的)
set命令返回“不匹配”错误并终止循环
如果发生这种情况,我怎样才能通过跳转到下一次迭代来处理错误?
set SUBIDS = (10003 10005 10006)
foreach SUBID ($SUBIDS)
foreach SEQR ( MATCH ENC NBACK SIMON FACE )
ls -l *${SEQR}*.nii.gz
set Array = *${SEQR}*.nii.gz
echo $Array[*]
....其余代码可以使用Array的内容来创建文本文件
当*${SEQR}*.nii.gz
返回文件名
但在使用通配符
进行无匹配时失败任何帮助都会得到很好的帮助
谢谢!
答案 0 :(得分:0)
你能做到并检查$ status(或$ STATUS,取决于你的系统)标志:
ls -l *${SEQR}*.nii.gz >> /dev/null ; if !$status then ...