Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 将Unix中的文件拆分为文件夹中的100个文件_Macos_Shell_Unix - Fatal编程技术网

Macos 将Unix中的文件拆分为文件夹中的100个文件

Macos 将Unix中的文件拆分为文件夹中的100个文件,macos,shell,unix,Macos,Shell,Unix,我正在尝试将一个包含10000个文件的文件夹拆分为多个包含100个文件的文件夹,每个文件夹位于同一文件夹内。这将是剪切操作,但不是复制操作。我尝试了一个命令,但这也算是100个文件中的一部分 我试过的命令: ➜ ~ mv -- *([1,100]) ~/Downloads/Pics/<FolderCount> ➜ ~ mv--*([1100])~/Downloads/Pics/ 在这里,我每次都要创建一个文件夹。我会很高兴有一个文件夹列表中的顺序或任何随机文件夹名称为所有

我正在尝试将一个包含10000个文件的文件夹拆分为多个包含100个文件的文件夹,每个文件夹位于同一文件夹内。这将是剪切操作,但不是复制操作。我尝试了一个命令,但这也算是100个文件中的一部分

我试过的命令:

➜  ~  mv -- *([1,100]) ~/Downloads/Pics/<FolderCount>
➜  ~  mv--*([1100])~/Downloads/Pics/

在这里,我每次都要创建一个文件夹。我会很高兴有一个文件夹列表中的顺序或任何随机文件夹名称为所有新文件夹创建

也许像这样-但在文件副本上进行测试。如果您喜欢它的功能,请删除单词
echo
——目前它只说明它的功能

#!/bin/bash
ns=0   # number ofsubdirectory
nf=0   # number of files moved

# Loop through all files
for f in *; do
   # Skip subdirectories
   [ -d "$f" ] && continue

   # Generate subdirectory name and create it, if necessary
   sub="sub-$ns"
   [ ! -d "$sub" ] && mkdir $sub 

   # Move file and count
   echo mv "$f" "$sub"
   ((nf++))

   if [ $nf -eq 100 ]; then
      ((ns++))         # start new subdirectory
      nf=0             # zero filecount
   fi
done

工作得很有魅力……:)