【问题标题】:Shell/terminal/bash command or script for copying list of files from one project to another用于将文件列表从一个项目复制到另一个项目的 Shell/终端/bash 命令或脚本
【发布时间】:2018-11-11 00:45:06
【问题描述】:

假设我有一个名为 my-project/ 的项目,它位于它自己的目录中,并具有以下文件结构。

我的项目/
.
├── src
│   ├── index.html
│   ├── main.js
│   ├── normalize.js
│   ├── routes
│   │   ├── index.js
│   │   └── Home
│   │       ├── index.js
│   │       └── assets
│   ├── static
│   ├── store
│   │   ├── createStore.js
│   │   └── reducers.js
│   └── styles
└── project.config.js

现在假设我有一个名为 my-new-project 的新项目,它也位于它自己的目录中,并且具有与 my-project 相同的文件结构,但它包含一个名为 my-files-to-copy.txt 的附加文件

我的新项目/
.
├── src
│   ├── index.html
│   ├── main.js
│   ├── normalize.js
│   ├── routes
│   │   ├── index.js
│   │   └── Home
│   │       ├── index.js
│   │       └── assets
│   ├── static
│   ├── store
│   │   ├── createStore.js
│   │   └── reducers.js
│   └── styles
├── project.config.js
└── my-files-to-copy.txt # new file added to tree

my-new-project/ 与 my-project/ 具有相同的文件结构但文件内容不同

现在假设 my-files-to-copy.txt 包含我想从 my-project/ 复制并写入 my-new-project/ 中的同一路径以覆盖 my- 中的现有文件的文件列表new-project/ 在这些位置。

我的文件到copy.txt
src/main.js
src/routes/index.js
src/store/reducers.js
project.config.js

如何使用终端/bash/shell 命令或脚本完成此操作?

编辑:

我想我可以做到:

cp my-project/src/main.js my-new-project/src/main.js
cp my-project/src/routes/index.js my-new-project/src/routes/index.js
cp my-project/src/store/reducers.js my-new-project/src/store/reducers.js
cp my-project/project.config.js my-new-project/project.config.js

但随着文件数量的增加,这种方法的效率会降低。我一直在寻找一种更有效的解决方案,它允许我利用包含文件列表(或至少一个脚本)的文件,而无需为每个文件编写单独的命令。

【问题讨论】:

  • 也许可以尝试使用rsync...
  • 欢迎来到 SO。 Stack Overflow 是一个面向专业和爱好者程序员的问答网站。目标是您将一些自己的代码添加到您的问题中,以至少显示您为解决这个问题所做的研究工作。

标签: bash shell terminal


【解决方案1】:

假设my-projectmy-new-project 在同一个目录:

xargs -i -a my-new-project/my-files-to-copy.txt cp my-project/{} my-new-project/{}

【讨论】:

    猜你喜欢
    • 2015-07-19
    • 1970-01-01
    • 2021-11-22
    • 1970-01-01
    • 1970-01-01
    • 2018-03-24
    • 2013-01-04
    • 1970-01-01
    • 2012-01-13
    相关资源
    最近更新 更多