【问题标题】:cp: target '/path/to/directory' is not a directorycp: 目标\'/path/to/directory\' 不是目录
【发布时间】:2023-01-28 02:31:07
【问题描述】:

当我想将build/*中的所有文件复制到gitlab-ci.yml文件中此规则的方向时,我真的被target /path/to/directory is not a directory弄糊涂了:

 script:

    - cp -rf build/* /path/to/directory

我还通过在目标的结尾和开头删除/添加 / 来检查此命令,但无济于事。

笔记:当我在服务器终端中手动运行 cp 命令并且没有问题时,它没问题。当我通过 ubuntu 服务器中的终端手动运行它时,此命令成功。

那么这里的问题是什么?

【问题讨论】:

  • 先做目录。这只是运行一个 sh 命令,所以问题肯定在你这边。

标签: reactjs gitlab gitlab-ci gitlab-ci-runner


【解决方案1】:

当我在服务器终端手动运行 cp 命令并且没有问题时就可以了。

这可能是因为目标文件夹存在于服务器本身,而它可能不存在于 GitLab 运行器的上下文中。

你应该:

【讨论】:

  • 我已经运行了mkdir -p /path/to/directory,但它现在显示为Permission denied
  • @Aly 然后做一个ls -alrth /path/to(要创建的目录的父文件夹),以及一个id -a,以了解你是谁(当跑步者执行你的脚本时)以及需要调整什么权限。
【解决方案2】:

我遇到了类似的错误,因为我的一个文件的名称中有一个空格,所以它正在寻找的路径只读取空格后的字符串。

【讨论】:

    猜你喜欢
    • 2019-06-17
    • 2017-01-03
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 2023-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多