Bash在循环中检测错误,然后继续处理

Bash在循环中检测错误,然后继续处理,bash,Bash,我想处理包含在文本文件中的自制公式列表。如果存在安装错误(例如,已安装,错误的公式名称),我希望它写入错误,但继续处理。这个 到目前为止,我所拥有的: ... # process list of formulas that have been installed for i in $(cat $FILE) ; do echo "Installing $i ..." # attempt to install formula; if error write error, proc

我想处理包含在文本文件中的自制公式列表。如果存在安装错误(例如,已安装,错误的公式名称),我希望它写入错误,但继续处理。这个

到目前为止,我所拥有的:

...
# process list of formulas that have been installed
for i in $(cat $FILE) ; do

    echo "Installing $i ..."

    # attempt to install formula; if error write error, process next formula

    brew install $i

done
...
我该怎么做?

有帮助吗

...
# process list of formulas that have been installed
for i in $(< "$FILE") ; do

    echo "Installing $i ..."

    # attempt to install formula; if error write error, process next formula

    brew install "$i" || continue

done
...
这应该很简单

# process list of formulas that have been installed
for i in $(<"$FILE") ; do

    echo "Installing $i ..."

    # attempt to install formula; if error write error, process next formula

    if ! brew install $i
    then
        echo "Failed to install $i"
        continue
    fi

done
#已安装公式的处理列表

对于$中的i(当前脚本会发生什么情况?在brew命令后的下一行,添加以下内容:如果[$?-ne 0];然后继续;fi或说brew某事| |继续。您应该查看“陷阱”命令。第二个选项尝试处理文件的空行。选择了第一个选项。我喜欢添加自定义错误消息的灵活性,但是
brew
的失败消息就足够了。
# process list of formulas that have been installed
for i in $(<"$FILE") ; do

    echo "Installing $i ..."

    # attempt to install formula; if error write error, process next formula

    if ! brew install $i
    then
        echo "Failed to install $i"
        continue
    fi

done