批量移动多个文件到多个文件夹的bat命令,详细如下:
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批量移动多个文件到多个文件夹的bat命令,详细如下:相关的知识,希望对你有一定的参考价值。
一个文件夹里有多个文件:
001.mp4
002.mp4
003.mp4
004.mp4
......
将指定数量的文件移动(分发)到其他指定的多个文件夹里,文件夹已提前建好
cls&echo off&cd /d "%~dp0"&mode con lines=5000
rem 将当前目录里的多个mp4文件按照指定数量平分到多个不同文件夹里
set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%_% %z%
set "current=%cd%"
echo;%#% +%$%%$%/%_% %z%
powershell -NoProfile -ExecutionPolicy bypass "Get-Content -literal '%~f0'|Out-String|Invoke-Expression"
pause
exit
#>
$count=4;
$folder=@"
文件夹1
文件夹2
文件夹3
文件夹4
文件夹N
"@;
$codes=@'
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
public static class ExpDir
[DllImport("Shlwapi.dll", CharSet=CharSet.Unicode)]
public static extern int StrCmpLogicalW(string p1, string p2);
public static string[] Sort(string[] f)
Array.Sort(f, StrCmpLogicalW);
return f;
'@;
Add-Type -TypeDefinition $codes;
$b=[Convert]::FromBase64String("IC0tPiA=");
$c=[Text.Encoding]::Default.GetString($b);
$arr=$folder.trim() -split '[\\r\\n]+';
$current=$env:current;
$files=@(dir -literal $current|?(@('.mp4') -contains $_.Extension) -and ($_ -is [System.IO.FileInfo]));
if($files.length -ge 1)
$n=0;
$brr=[ExpDir]::Sort($files);
for($i=0;$i -lt $brr.count;$i++)
if($n -lt $arr.length)
$fd=$arr[$n].trim();
$newfolder=$current+'\\'+$fd;
$oldfile=$current+'\\'+$brr[$i];
$newfile=$newfolder+'\\'+$brr[$i];
write-host ($brr[$i]+$c+$fd);
if((($i+1) % $count) -eq 0)$n++;
追问
你好,运行之后文件没有移动,CMD运行框里看起来像是正确的,但是文件却没有移动
追答按运行代码后窗口标题栏中的提示联系我
参考技术A MOVE是移动文件的命令,根据例子,可以使用命令:move *.mp4 分发\
或者:
move ???.mp4 分发\追问
不行呀,无法实现上述分发的功能
追答请上三图,一是代码,二是执行前后文件夹
Linux批量替换多个文件中字符串
参考技术A linux批量替换多个文件中字符串linux下批量替换多个文件中的字符串的简单方法。用sed命令可以批量替换多个文件中的字符串。用sed命令可以批量替换多个文件中的字符串。sed
-i
s/原字符串/新字符串/g
`grep
原字符串
-rl
所在目录`例如:我要把mahuinan替换为huinanma,执行命令:sed
-i
s/mahuinan/huinanma/g
'grep
mahuinan
-rl
/www'这是目前linux最简单的批量替换字符串命令了!具体格式如下:sed
-i
s/oldString/newString/g
`grep
oldString
-rl
/path`实例代码:sed
-i
s/大小多少/日月水火/g
`grep
大小多少
-rl
/usr/aa`sed
-i
s/大小多少/日月水火/g
`grep
大小多少
-rl
./`
以上是关于批量移动多个文件到多个文件夹的bat命令,详细如下:的主要内容,如果未能解决你的问题,请参考以下文章
**.bat中,怎样将多文件,按文件名的关键字批量移动到多相应的文件夹中?
求bat批量移动文件到包含文件名的文件夹中, 文件夹有多层,需自动识别到与文件名对应的文件夹。