【发布时间】:2009-03-23 11:23:18
【问题描述】:
在尝试编写一个简单的 bash 脚本来提供帮助时 在我的部署过程中,我遇到了一个令人困惑的错误:
#!/bin/bash
WEEKDAY=$(date +'%u')
echo $WEEKDAY
DAYS_TO_WEDNESDAY=$((3-$WEEKDAY))
echo $DAYS_TO_WEDNESDAY
结果:
1
")syntax error: invalid arithmetic operator (error token is "
其中最奇怪的部分是我可以发誓这 非常脚本几天前运行得非常好。
编辑(14:58):
问题不在于 bash 脚本,而在于通过 TortoiseSVN 使用 SVN。通过 Windows 的绕道将 EOL 标记更改为“CR LF”,这导致 bash 中的语法错误。设置 svn:eol-style -property 有助于避免进一步的类似问题。
【问题讨论】:
-
该脚本在这里没有任何错误(我从您的问题中复制/粘贴): $ WEEKDAY=$(date +'%u') $ echo $WEEKDAY 1 $ DAYS_TO_WEDNESDAY=$(( 3-$WEEKDAY)) $ echo $DAYS_TO_WEDNESDAY 2
-