如何检查shell命令是否正确执行?

发布于 2024-09-25 02:04:15 字数 303 浏览 3 评论 0原文

#!/bin/sh
tar=$1
if [ -f $tar ]
then
    tar xvf $tar
else
    exit 1
fi

... <more code>

我需要确认 tar 实际上成功发生,否则中止脚本的执行。

tar 文件提取可能无法完成,因为

  • tar 命令
  • 访问问题 $tar 存在问题

Linux 实用程序是否有一些返回值?我应该如何在这里使用它们?

#!/bin/sh
tar=$1
if [ -f $tar ]
then
    tar xvf $tar
else
    exit 1
fi

... <more code>

I need a conformation that the tar actually happened successfully, otherwise abort the execution of the script.

The tar file extract might not go through because

  • some problems with tar command
  • access issues with $tar

Do Linux utilities have some return values? How should I use them here?

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

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

发布评论

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

评论(2

愁杀 2024-10-02 02:04:15

执行命令后检查 $? 变量。如果一切正常,则应为 0,否则为正值。

tar xvf $tar
[ $? -ne 0 ] && exit 1

更多信息请参见此处

Check the $? variable after executing a command. If everything is OK, it should be 0, positive otherwise.

tar xvf $tar
[ $? -ne 0 ] && exit 1

More information here.

孤独患者 2024-10-02 02:04:15

这个

tar xvf "$tar" || exit 1

或这个(如果你想自己检查文件是否存在)

[ -f "$tar" ] && tar xvf "$tar" || exit 1

This

tar xvf "$tar" || exit 1

or this (if you want to check if file exists yourself)

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