使用 set -e 的 shell 别名使命令失败?

发布于 2024-12-12 02:25:23 字数 236 浏览 0 评论 0原文

因此,我们有一个别名:

alias doIt='cd somedir; rm -rf *'

我们希望命令立即失败,例如,如果 somedir 不存在。这可以防止我们在不方便的地方得到 rm -rf 炸弹。 这样的事情可能吗?如果不行,还有别的办法吗?:

alias doIt='set -e; cd somedir; rm -rf *'

So we have an alias that does:

alias doIt='cd somedir; rm -rf *'

What we want is for the command to fail immediately if, for example, somedir does not exist. This protects us from getting the rm -rf bomb in an inconvienient location.
Is something like this possible? If not, is there another way?:

alias doIt='set -e; cd somedir; rm -rf *'

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

神经暖 2024-12-19 02:25:23
alias doit='cd somedir && rm -rf *'

如果 cd somedir 失败,rm -rf * 将不会执行。

alias doit='cd somedir && rm -rf *'

the rm -rf * won't be executed if cd somedir fails.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文