gpt4 book ai didi

bash - Ubuntu shell脚本出错

转载 作者:行者123 更新时间:2023-12-04 18:58:25 24 4
gpt4 key购买 nike

我正在开发简单的 shell 脚本,它将我当前的所有目录文件复制到 备份将存在于当前工作目录中的目录。现在,当我在 中通过多个条件时出现错误如果 .

#!/bin/bash
filename=nx.pdf
for i in *;
do
echo $i;
if [ $i == backup || $i == $filename ] ; then
echo "Found backup."
else
echo "Part 2"
cp -rf $i backup
fi
done

我收到错误
asd.sh: line 6: [: missing `]'
asd.sh: line 6: ==: command not found
Part 2
deployee.sh
asd.sh: line 6: [: missing `]'
asd.sh: line 6: ==: command not found
Part 2

最佳答案

比较运算符是 =(在 POSIX 中定义)。但是 == 也适用于某些 shell。
像这样的东西应该工作:

if [ $i = backup ] || [ $i = $filename ] ; then

关于bash - Ubuntu shell脚本出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13191564/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com