这个shell脚本正在抛出一个错误消息:
语法错误在意外令牌附近执行
这是我的密码
#!/bin/bash
DIRS="/home/delhi_qa/mkv/18000/marketview/log/FIFO_OPTIMISER/LOGS 1"
DEST="home/delhi_qa/Tests/Ankit/TTLOGSBACKUP"
DELETE_OLD_ZIP_FILES="no" 
BASENAME=/usr/bin/basename 
ZIP=/usr/bin/zip
for i in $DIRS
do
    #On running this unexpected token message occurred at this line#
    zipfile="${DEST}/$(${BASENAME} ${d}).zip"
    echo -n "Creating $zipfile..."
    if [ "$DELETE_OLD_ZIP_FILES" == "yes" ]
    then
        [ -f $zipfile ] && /bin/rm -f $zipfile 
    fi
    ${ZIP} -r $zipfile $d &>/dev/null && echo "Done!"
done你能告诉我为什么吗?
发布于 2016-03-10 16:27:28
将example.sh文件转换为unix的简单方法是使用NotePad++ (Edit>EOL转换>UNIX/OSX格式)。
您还可以在notepad++中设置默认的EOL (Settings>Preferences>New文档/默认Directory>select Unix/OSX在格式框下)
参考- syntax error near unexpected token `$'in\r''
它也解决了这个问题:build.sh gives error while building ffmpeg library
我用过这个。它能更早解决我的问题。
devnull和Armali已经指出了这个问题。希望这些细节能对你有所帮助。
发布于 2014-05-13 09:18:27
用途: DIRS="/home/delhi_qa/mkv/18000/marketview/log/FIFO_OPTIMISER/LOGS\ 1“
在日志之后检查其他“\”,因为如果不使用“\”,linux将不会占用空间。这可能是导致错误的原因。要确认它的正常工作,您也可以使用不同的文件夹名称进行检查,例如LOG_1。
https://stackoverflow.com/questions/23625397
复制相似问题