Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Перемещение заданного количества файлов, начиная с последнего по имени (http://forum.oszone.net/showthread.php?t=286818)

Alexander_88 21-08-2014 08:50 2392105

Перемещение заданного количества файлов, начиная с последнего по имени
 
Здравствуйте. подскажите, пожалуйста как можно переместить заданное количество файлов, начиная с последнего по имени, из одного каталога в другой. :sorry:

Georgio 21-08-2014 10:12 2392137

Код:

@echo off

set number=2
set "in=D:\Test 1"
set "out=D:\Test 2"

for /f "delims=" %%i in ('
"dir /a-d/b/o-n "%in%" 2>nul"
') do (
 set /a count+=1
 for /f %%j in ('
  set /a count
 ') do (
  if %%j leq %number% (
  move "%in%\%%i" "%out%">nul
  ) else (
  exit /b
  )
  )
 )


Elven 21-08-2014 10:22 2392144

Например так
Код:

for /F "token=1-100500" %%f in ('dir /B /O-N "папка_в_которой_лежат_файлы"') do (
del /f /q %%f
)

где 100500 - файлы количество которых нужно удалить, а "папка_в_которой_лежат_файлы" - папка в которой лежат файлы

Alexander_88 21-08-2014 10:26 2392147

Georgio :yahoo: Спасибо, опять вы меня выручили

Elven
Код:

for /F "token=1-2" %%f in ('dir /B /O-N "C:\work\new"') do (
del /f /q %%f
)
pause
exit

пишет непредвиденное появление token=1-2"

Georgio 21-08-2014 10:34 2392151

Цитата:

Цитата Elven
Код:

for /F "token=1-100500" %%f in ('dir /B /O-N "папка_в_которой_лежат_файлы"') do (
»

Elven, это шутка такая?

gora 21-08-2014 11:01 2392165

Elven
Цитата:

Цитата Elven
token= »

1 Правильно пишется: tokens=
Цитата:

Цитата Elven
где 100500 - файлы количество которых нужно удалить »

2 Ни чего подобного. В имени каждого файла будет выделено указанное число подстрок (если их там столько наберется), а использоваться в команде удаления будет только первая подстрока и это третья ошибка!
3 Имена файлов с пробелами будут разрезаны на подстроки и эти файлы удалены не будут.
4 Ни какого ограничения на число удаляемых файлов в коде нет, удаляться все файлы с именами без пробелов.

Elven 21-08-2014 11:36 2392172

gora, Georgio, Alexander_88, всем большое сорри, факир был пьян - фокус не удался (реально с бодуна написал, теперь самому страшно: из полезного только сортировка по имени). Сейчас кофейку дернул исправлю шоб работало.
Насчет имени файлов delims= и ковычки все весьма исправляют, опять же сейчас поправлю.
хотя пардоньте, не буду ничего исправлять - пусть будет памятником моей бодунистической безалаберности, все равно решение уже имеет место быть.


Время: 17:05.

Время: 17:05.
© OSzone.net 2001-