如何使用cp从不同的目录复制多个文件?

ziu*_*fer 49 linux bash cp

我想在另一个目录中复制特定目录中的多个文件.为了澄清我想立即执行以下操作(一个命令):

cp ../dir5/dir4/dir3/dir2/file1 .
cp ../dir5/dir4/dir3/dir2/file2 .
cp ../dir5/dir4/dir3/dir2/file3 .
cp ../dir5/dir4/dir3/dir2/file4 .
Run Code Online (Sandbox Code Playgroud)

我无法使用, cp ../dir5/dir4/dir3/dir2/* . 因为dir2n文件(n>4)

顺便说一下,我正在使用bash.

谢谢.

Phi*_*ipp 78

cp ../dir5/dir4/dir3/dir2/file[1234] .
Run Code Online (Sandbox Code Playgroud)

或(在Bash中)

cp ../dir5/dir4/dir3/dir2/file{1..4} .
Run Code Online (Sandbox Code Playgroud)

如果文件名是非连续的,则可以使用

cp ../dir5/dir4/dir3/dir2/{march,april,may} .
Run Code Online (Sandbox Code Playgroud)

  • 你为什么不告诉我们真实情况呢? (2认同)

gho*_*oti 5

如果要复制的所有文件都是模式file{number}{othertext},则可以使用以下内容:

cp ../dir5/dir4/dir3/dir2/file[0-9]* .
Run Code Online (Sandbox Code Playgroud)

请注意,这将复制file5,但也会复制file0abc.

如果您只想复制这四个文件(而不是{othertext}文件),您可以使用:

cp ../dir5/dir4/dir3/dir2/file[1-4] .
Run Code Online (Sandbox Code Playgroud)

请注意,虽然这看起来像正则表达式的一部分,但它不是.