我认为这段代码会做到这一点。如果文件夹B中的文件数大于folderA文件数的3倍,则它基于模递增folderB数和临时停止条件。
- FolderA的图案是1,5,9 ...这就好比初始化我为1,并通过4每次迭代递增。
- FolderB中的1个,如果我模4递增的名字不是0否则被2
递增如果复制粘贴到一个文件中(假设renaming.sh),并假设正确执行许可($>使用chmod + X renaming.sh),它可以用来像在命令行:
$> ./renaming.sh folderA folderB
下面就来把文件中的代码:
#!/bin/bash
i=1
ACOUNT=0
for FILEA in $1/*; do
mv "${FILEA}" "$1/${i}"
((i+=4))
((ACOUNT++))
done
i=1
BCOUNT=0
for FILEB in $2/*; do
if ((i%4)) ; then
((i++))
else
((i+=2))
fi
if ((BCOUNT>= 3* ACOUNT)); then break; fi
((BCOUNT++))
mv "${FILEB}" "$2/${i}"
done
这需要一点编程。你知道任何编程语言吗? –
我不是程序员,但是我在C和一些Linux脚本上编写了一些代码,但没有涉及管理不同文件夹上的文件。 – darko
这个解决方案可以用几十种语言完成,所以如果你发布这样的问题,最好给人们一个你想用的语言的概念。这个网站的想法是帮助你学习,所以它应该使用你已经熟悉的技术。 –