【问题标题】:mv wrapped inside an if in shell scriptingmv 包裹在 shell 脚本中的 if 中
【发布时间】:2014-04-23 21:30:26
【问题描述】:

你是怎么做到的? 我的想法是这样的..另外,我需要使用fi并完成吗?或者只有其中一个

if[mv 1.txt > 2.txt == '0'] 
then
 echo "Success"
else
 echo "Failure"
fi
done

【问题讨论】:

    标签: linux bash shell scripting


    【解决方案1】:

    在 BASH 中,只有这样就足够了:

    mv 1.txt 2.txt && echo "Success" || echo "Failure"
    

    但是,如果您想使用传统的if/fi,请使用

    if mv 1.txt 2.txt
    then
      echo "Success"
    else
      echo "Failure"
    fi
    

    【讨论】:

    • 如何在第一个之后添加 fi?因为我认为没有它我会意外结束文件。
    • 我展示的第一个命令没有if/fi,只有在第二个版本中你可以使用,如图所示。
    【解决方案2】:
    if mv 1.txt 2.txt
    then
      echo Success
    else
      echo Failure
    fi
    

    if 将命令作为其参数,如果命令运行成功,则执行 then 子句,如果出现错误,则执行 else 子句。有趣的是,曾几何时,[ 是一个评估您交给它的条件的命令,并且它可能仍然在您的系统上可用——查看/usr/bin/[

    如果您没有do 语句,则不需要done 语句。 fiif 命令的最后语句所必需的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-03-25
      • 1970-01-01
      • 1970-01-01
      • 2017-04-13
      • 2019-11-21
      • 1970-01-01
      • 2011-08-01
      相关资源
      最近更新 更多