我有一个网站的两个存储库:一个用于后端,一个用于前端。我想将文件从前端复制到后端目录,以便所有内容都可以从一个地方提供。
当我build
在前端运行命令时,dist/
会创建一个名为的文件夹。我想将所有这些文件复制到具有相对路径的文件夹中../backend/public
。此public
文件夹可能已经包含一些其他文件。
index.html
我当前的脚本使用和和目录的硬编码名称assets/
,但随着时间的推移可能会添加更多文件,因此我想要一个通用的解决方案,将所有未改变的内容复制到dist/
中../backend/public
。
#!/bin/bash
cd ../backend/public
rm -rf index.html assets
cp ../../frontend/dist/index.html ./
cp -r ../../frontend/dist/assets ./assets
您的脚本可以压缩为:
如果您要复制同名文件,则无需
cd
在脚本中执行此操作,也无需删除现有文件,您只需删除目录即可,否则,如果目录存在,则将保留任何名称不同的文件。如果您只复制同名文件,则也不需要这样做。为了使其更通用,您可以传递要复制的文件/目录列表:
frontend
然后您可以从这样的目录中运行它: