Bash:cd和路径变量出错

时间:2014-07-09 17:24:17

标签: bash variables github path cd

以下是相关代码:

path_prefix='opt/copyright_service/gitHub'
while read line
do
    user=$line
    echo $user
    while read line
    do
        repoName=$line

        path="/$path_prefix/$user"

        echo $path

        cd $path
    done < $2
done < $1

输出结果为:

username
/opt/copyright_service/gitHub/username
: No such file or directoryopyright_service/gitHub/username

为什么不识别cd命令中的完整路径?在我添加用户功能之前,我让它从文件中读取存储库名称,并且没有问题就这样做了,但是现在我已经完成了这两个工作,但它没有用。

正在阅读的文件内容是&#34;用户名&#34;

通过在cd命令(cd / $ path_prefix / $ user)中连接$ path_prefix和$ user,我尝试了多种连接$ path的方法,通过指定路径前缀来调用cd

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

大猜测:您的脚本不是UNIX格式。尝试使用dos2unix,或使用可以很好地转换它的编辑器。使用sed -i -e 's|\r||' your_script.sh也可以。

如果没有,可能是输入文件不是。