shell脚本发生了什么问题 最好能解释一下


!/bin/bash
echo"Running at $(date)"
echo"RUnning $0 with $# args with pid $$"

for i in $@;do
        grep sast $i > /dev/null 2>&1
        if[[$?-ne0]];then
             echo"#sast forever!">>$i
        fi
done

你这个脚本咋执行的了

比如你脚本执行的时 ./script a b c d
它的意思依次在 a ,b ,c ,d z中查找 sast 如果找到了就将 "#sast forever!" 添加到对应文件的末尾

 
!/bin/bash
echo"Running at $(date)"   #输出运行脚本的时间 $(date)
echo"RUnning $0 with $# args with pid $$"   # $0是文件名,$# 是入参的个数
for i in $@;do      #遍历所有入参 $@
        grep sast $i > /dev/null 2>&1    #查询 入参中 是否有sast 这个关键字 并把查询结果放入 缓存 2>&1 一般不想 输出命令打印都会这样写
        if[[$?-ne0]];then         # $? 保存上一行命令的执行成功与否,成功为0  不成功为非0
             echo"#sast forever!">>$i   #如果找到了sast关键字就把#sast forever! 添加到 入参表示文件的末尾
        fi
done