Can';不要运行简单的bash脚本
我试着这样做Can';不要运行简单的bash脚本,bash,Bash,我试着这样做 #!/bin/bash ${postid=41930} while ${postid} < 42000; do `node title.js ${postid}` ${postid} = ${postid} +1; done 来自曼什 while *list*;do *list*;done sh version 3.2 也许,你想要 for((postid=41930;postid<42000;++postid)) do node title.js $po
#!/bin/bash
${postid=41930}
while ${postid} < 42000;
do
`node title.js ${postid}`
${postid} = ${postid} +1;
done
来自曼什
while *list*;do *list*;done
sh version 3.2
也许,你想要
for((postid=41930;postid<42000;++postid)) do
node title.js $postid
done
for((postid=41930;postid可能,您需要
for((postid=41930;postid<42000;++postid)) do
node title.js $postid
done
for((postid=41930;postid另一种仅使用bash功能的快捷方式是:
#!/bin/env bash
for postid in {41930..41999} ; do node title.js ${postid} ; done
参考资料:另一种仅使用bash功能的快速方法是:
#!/bin/env bash
for postid in {41930..41999} ; do node title.js ${postid} ; done
参考资料:其他答案可能是您想要使用的。仅供参考,以下是您的错误来源
${postid=41930}
要将41930分配给posted
,只需使用postid=41930
。注意等号周围没有空格
while ${postid} < 42000;
为了给变量赋值,bash不允许在等号周围使用空格。对于空格,它通过展开$postid
并将其视为要运行的命令来解释此行,并将=
作为第一个参数。使用postid=$postid+1;
。在左侧,由于不展开,因此不需要美元符号变量的值,但分配给名称。在右侧,您需要美元符号来获取发布的的值
done
其他答案可能是您想要使用的。仅供参考,以下是您的错误来源
${postid=41930}
要将41930分配给posted
,只需使用postid=41930
。注意等号周围没有空格
while ${postid} < 42000;
为了给变量赋值,bash不允许在等号周围使用空格。对于空格,它通过展开$postid
并将其视为要运行的命令来解释此行,并将=
作为第一个参数。使用postid=$postid+1;
。在左侧,由于不展开,因此不需要美元符号变量的值,但分配给名称。在右侧,您需要美元符号来获取发布的的值
done
脚本中有几个地方需要修复:
正如切普纳所说,您不能将值赋给像${postid}
这样的计算结果,而是直接在赋值的左侧使用postid
脚本中应该有一些不可见的字符。请尝试运行dos2unix myscript.sh
或手动将以下代码键入新文件
- 很抱歉,我无法正确设置代码格式,请查看
脚本中有几个地方需要修复:
正如切普纳所说,您不能将值赋给像${postid}
这样的计算结果,而是直接在赋值的左侧使用postid
脚本中应该有一些不可见的字符。请尝试运行dos2unix myscript.sh
或手动将以下代码键入新文件
- 很抱歉,我无法正确设置代码格式,请查看
#!/bin/bash for((postid=41930;postid@v.tsurka,问题被标记为bash
,而不是sh
。!/bin/bash((postid=41930;postid@v.tsurka,问题被标记为bash
,而不是sh
。bc-c8-d8-eb-65:googlecache macbookpro$sh run.sh run.sh:第3行:语法错误:意外的文件结尾除非文件中有隐藏字符,否则我不知道是怎么回事。你手动键入代码了吗?我很惊讶你必须在第一个pl中这样做ace。如果文件是在您的Mac上创建的,它应该可以开箱即用。或者文件最初来自其他编辑器?或者您是从其他地方复制了一个.vimrc?这可以解释问题。无论如何,我很高兴您发现了您的问题:)bc-c8-d8-eb-65:googlecache macbookpro$sh run.sh run.sh:第3行:语法错误:文件意外结束除非文件中有隐藏字符,否则我不知道是怎么回事。你手动键入代码了吗?我很惊讶你一开始就必须这么做。如果文件是在Mac上创建的,它应该可以开箱即用。或者文件是originally来自另一个编辑器?或者你是从其他地方复制了一个.vimrc吗?这可以解释问题。无论如何,我很高兴你发现了你的问题:)非常感谢你的解决方案。我必须使用vi:set ff=unix。并且知道所有方法都有效!!!非常感谢你的解决方案。我必须使用vi:set ff=unix。并且知道所有方法都有效!!!