linux - 在 cp 命令中使用通配符 [xyz]

标签 linux macos unix

我想将一个名为 TEST 的文件复制到一堆名为 1/2/... 9/的文件夹中

我正在尝试使用

cp -v TEST ./[1-9]/
# which gives the result:
TEST '->' ./9/fractionofanions
cp: omitting directory './1'
.
.
cp: omitting directory './8'

谁能解释为什么它一开始只复制到文件夹 9,还有什么解决方法可以满足我的需要?提前致谢。

最佳答案

cp 可以将多个文件复制到一个目录,但不能将文件复制到多个目录。在这种情况下,您正在尝试将 TEST 和目录 1-8 复制到目录 9/- 请参阅 man cp 获取更多信息。

但是,您可以使用以下命令将一个文件复制到多个目录中,使用 find 作为助手:

find [1-9] -exec cp file.txt {} \;

关于linux - 在 cp 命令中使用通配符 [xyz],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27609051/

相关文章:

linux - 如何在 Linux 中为本地服务器分配 URL

linux - 从堆栈中弹出和打印 argc

android - Mac 操作系统 : Android Studio quit unexpectedly on first time startup

macos - 基于文档的应用程序中的 NSNotificationCenter

python - 交互式 Python Mac OS X 帮助()

linux - 使用awk和grep相加

linux - 如何使用 cronolog 或rotatelogs 在 ProFTPd 中轮换日志

php - 从 php 启动一个独立进程(通过 httpd)

linux - 根据匹配行合并两个 csv 文件并在 linux 中添加新列

linux - 删除 zip 存档中的文件 "older than"