我想根据可用的最小系统修改日期移动
Name date Modified
file1 14/05/2018 11:21 AM
file2 14/05/2018 11:41 AM
在这种情况下,我们希望将file1与最大系统修改日期区分开来。所有剩余的文件都必须移动
我试过下面的命令:
move /-y "C:\app\folder1*.txt" "C:\app\folder2\"
暂停
尝试了其他步骤
Get-ChildItem -Path "C:\app\folder1\"
Sort-Object LastWriteTime -Descending
Move-Destination t-Object -Skip 1
Move-Item -Destination "C:\app\folder2\" |
我再次尝试收到错误.... | C:\ app \ folder1> Move-Item -Destination“C:\ app \ folder2 \”
'Move-Item'不被识别为内部或外部命令,可操作程序或批处理文件。
感谢
答案 0 :(得分:0)
我不知道您是否知道,但您尝试的另一个步骤是powershell.exe
代码而不是cmd.exe
。
类似的东西可以满足您的需求:
@Echo Off
Set "dirSrc=C:\App\Folder1"
Set "dirDst=C:\App\Folder2"
Set "extSrc=*.txt"
If Exist "%dirSrc%\%extSrc%" (CD /D "%dirSrc%" 2>Nul || Exit /B
) Else Exit /B
If Not Exist "%dirDst%\" (MD "%dirDst%" 2>Nul || Exit /B)
For /F "Skip=1 Delims=" %%A In ('Dir /B/A-D-H-L-S/O-D/TW "%extSrc%"'
) Do Move /Y "%%A" "%dirDst%">Nul 2>&1
在运行之前,您需要确保行2
和3
中指定的目录是正确的,并且行4
中的文件掩码是正确的。