Linux Bash Shell语法错误已完成<$vid&x27;

Linux Bash Shell语法错误已完成<$vid&x27;,linux,bash,shell,syntax,Linux,Bash,Shell,Syntax,我有个错误 test: line 16: syntax error near unexpected token `done' test: line 16: ` done < $vid' 我的文本文件中有3个链接,脚本将下载,然后mux切换到另一个mux下载链接等 注意:脚本必须接受空格和特殊字符 如果您想了解更多信息,请不要犹豫:) 发送以获取您的帮助错误源: mkvmerge -v -o ..... nguage 0:fre "${n

我有个错误

test: line 16: syntax error near unexpected token `done'
test: line 16: `               done < $vid'
我的文本文件中有3个链接,脚本将下载,然后mux切换到另一个mux下载链接等

注意:脚本必须接受空格和特殊字符

如果您想了解更多信息,请不要犹豫:)

发送以获取您的帮助

错误源:

            mkvmerge -v -o ..... nguage 0:fre "${name}.ass" mkvtemp.mkv && \
            # HERE ------------------------------------------------->      ^^
            # probably missing one line before "done"
            done < $vid
mkvmerge-v-o。。。。。语言0:fre“${name}.ass”mkvtemp.mkv&&\
#这里------------------------------------------>^^
#可能在“完成”之前漏了一行
完成<$vid
评论:

  • 如果您开始使用函数,则调试和维护更容易。将代码拆分为更多可维护的部分。。。与使用外部命令一样,您可以在读取时使用functinos执行任何操作,如:
    funcname
    。。或者重定向其输出,如
    funcname>somehere
    等等
  • 双引号变量

至少要使用合理的压痕。它将帮助您找到至少一些您目前存在的语法问题。。。例如,当
else
块中的
时,您没有正确地结束
,或者在不需要它们的行上有连续斜杠(并且可能吞没了要自己解析的行)。
www.website.me/348744jnm
www.website.me/43545ljkjjk
www.website.me/554erer5cf
            mkvmerge -v -o ..... nguage 0:fre "${name}.ass" mkvtemp.mkv && \
            # HERE ------------------------------------------------->      ^^
            # probably missing one line before "done"
            done < $vid