如何在github工作流程中创建文件夹?

Mr.*_*rew 8 linux github github-actions building-github-actions

我正在尝试在 github 工作流程中将一个文件夹的内容复制到另一个文件夹中。我知道工作流程可以创建新的文件夹和文件,因为在 React 项目上调用构建会创建项目中不存在的构建,但它会在使用 mkdir 的后续运行命令中引发错误。

\n

错误:\nmkdir: cannot create directory \xe2\x80\x98myNewFolder\xe2\x80\x99: No such file or directory

\n

我的问题是如何实现

\n
> mkdir myNewFolder && cp -R myOldFolder myNewFolder\n
Run Code Online (Sandbox Code Playgroud)\n

或者

\n
> cp -R myOldFolder myNewFolder\n
Run Code Online (Sandbox Code Playgroud)\n

当 repo/workflow 工作目录中不存在 myNewFolder 时工作?

\n

编辑(请求的工作流程文件)

\n
name: Test Server Build and Deploy (CD)\n\non:\n  push:\n    branches:\n        - cd_branch\n\njobs:\n  deploy:\n    runs-on: ubuntu-latest\n    env: \n        MY_APP_ENV_VARIABLE:  ${{ secrets.ENV_VARIABLE}}\n\nsteps:\n        - uses: actions/checkout@v2\n        - uses: actions/setup-node@v2\n          with:\n              node-version: \'14.15.4\'\n        - run: npm cache clean --force\n        - run: npm run copy-script\n
Run Code Online (Sandbox Code Playgroud)\n

我的在哪里copy-script

\n
> mkdir myNewFolder && cp -R myOldFolder myNewFolder\n
Run Code Online (Sandbox Code Playgroud)\n

Krz*_*tof 8

当创建嵌套在另一个文件夹中的新文件夹时,请在后面添加-p(parants) 选项,mkdir以告诉 Linux 将所有目录列出在路径中。

我尝试过这个,它对我有用:

name: SO-023 Create folder

on:
  push:
    branches: [ main ]

  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v2
      - name: Create folder
        run: |
          mkdir -p myNewFolder/myNewSubFolder && cp -R dist myNewFolder/myNewSubFolder
          ls myNewFolder/MyNewSubFolder
          
Run Code Online (Sandbox Code Playgroud)