如何将特定文件复制到特定文件夹linux bash中

时间:2016-12-12 17:27:51

标签: linux bash

  
      
  1. 创建50个名称从150的文件。
  2.   
  3. 创建五个文件夹(010203040)。
  4.   
  5. 根据文件名将这50个文件复制到文件夹中(例如,文件21将转到文件夹20)。
  6.   

我创建了这些文件和文件夹,但不知道如何将特定文件移动到特定文件夹。我试着写

cp {1..9} /home/user/folder

但这是不可接受的。是否可以使用ifelif

2 个答案:

答案 0 :(得分:1)

cp {1..9} /home/user/folder

这将起作用,除非您应指定要复制到的正确文件夹。也许你的意思是其中之一?

cp {1..9} /home/user/folder/0
cp {1..9} 0

另一种方法是使用通配符。 *匹配任何字符串,?匹配任何一个字符。例如,2?将匹配文件名2029

答案 1 :(得分:0)

如果您不介意使用for循环代替ifelse,则可以使用以下代码:

#1
touch file{1..50}
#2
mkdir dir{0..40..10}
#3
for i in {1..4}; do
  cp file${i}* dir${i}
done
cp file* dir0 # note that this will copy file50 into dir0