Батник для перемещения файлов в одноименные папки
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Батник для перемещения файлов в одноименные папки

Батник для перемещения файлов в одноименные папки

Ответ
Поиск в этой теме
Непрочитано 06.04.2014, 18:44 #1
Батник для перемещения файлов в одноименные папки
Солидворкер
Moderator
 
Конструктор (машиностроение)
 
Россия
Регистрация: 23.10.2006
Сообщений: 23,258

Коллеги, помогите чайнику!
Нужен батник, который сканирует директорию, в которой запущен, создает папки с именами идентичными именам файлов в директории и и перемещает файлы в эти одноименные папки. Одна папка-один файл.


Поиск выдал только плагины к ТС с аналогичным функционалом, а нужно прямо из проводника.

Заранее спасибо за любую помощь!
Просмотров: 7398
 
Непрочитано 06.04.2014, 22:54
#2
bargool


 
Регистрация: 16.08.2006
Санкт-Петербург
Сообщений: 508
<phrase 1=


Димаааа_!
__________________
Алексей
bargool вне форума  
 
Непрочитано 06.04.2014, 23:05
#3
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


VBScript можно поюзать, не?
gomer вне форума  
 
Непрочитано 06.04.2014, 23:55
1 | #4
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Ну и вопросы в воскресенье вечером - давно я не брал в руки шашки:
Код:
[Выделить все]
attrib +h test.bat
FOR %%a IN (*.*) DO (
   if exist "%%~na" (ren "%%~na" tmpxx) else (md tmpxx)
   move "%%a" "tmpxx\%%a"
   ren "tmpxx" "%%~na")
attrib -h test.bat
Важно файл скрипта должен называтся test.bat (или по другому - но как в 1-ой и последней строке) - инчае его тоже перенесет из активной директории и он не отработает до конца.
__________________
Когда в руках молоток все вокруг кажется гвоздями.

Последний раз редактировалось Дима_, 07.04.2014 в 12:30.
Дима_ вне форума  
 
Автор темы   Непрочитано 07.04.2014, 00:48
#5
Солидворкер
Moderator

Конструктор (машиностроение)
 
Регистрация: 23.10.2006
Россия
Сообщений: 23,258
<phrase 1=


Цитата:
Сообщение от Дима_ Посмотреть сообщение
Важно файл скрипта должен называтся test.bat (или по другому - но как в 1-ой и последней строке) - инчае его тоже перенесет из активной директории и он не отработает до конца.
Вроде, получилось, но со второго раза
В первый раз он запустился, но создал только 2 пустых папки с именами %%a) и %%axxx

Во второй раз я его запустил не даблкликом, а из адресной строки проводника. Окучил все, кроме нескольких файлов у которых длина имени была больше 256/2 символов
Солидворкер вне форума  
 
Непрочитано 07.04.2014, 11:25
#6
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


ЭЭЭ а какая операционка? (win95 что-ли) - у меня на 7-ке и 8-ке то, что ты описываешь воспроизвести не удалось - работает с клика естественно в соотв. папке и перетаскивает любую длинну
з.ы. попробуй поменять расширение на cmd (соответственно и в файле 2 строки) - уж не помню - был какой-то прикол с этим - но т.к. у меня и так и так работает - то не знаю.
з.з.ы можно еще shell попробывать смастерить (он по моему с vist'ы идет), ну или вобще экзешник.


Вру - точно длинные не тягает - сейчас подумаю...

----- добавлено через ~6 мин. -----
Все допер - обновил в #4.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Автор темы   Непрочитано 07.04.2014, 11:40
#7
Солидворкер
Moderator

Конструктор (машиностроение)
 
Регистрация: 23.10.2006
Россия
Сообщений: 23,258
<phrase 1=


Цитата:
Сообщение от Дима_ Посмотреть сообщение
ЭЭЭ а какая операционка? (win95 что-ли)
8 и 7

Сейчас все, вроде, работает.

А расширение файлов реально не включать в имя папки?
Солидворкер вне форума  
 
Непрочитано 07.04.2014, 11:43
#8
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


а два с одинаковым именем но разным разрешением - в одну положить или как?
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Автор темы   Непрочитано 07.04.2014, 12:16
#9
Солидворкер
Moderator

Конструктор (машиностроение)
 
Регистрация: 23.10.2006
Россия
Сообщений: 23,258
<phrase 1=


Цитата:
Сообщение от Дима_ Посмотреть сообщение
а два с одинаковым именем но разным разрешением - в одну положить или как?
В одну
Солидворкер вне форума  
 
Непрочитано 07.04.2014, 12:31
1 | #10
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


#4
Offtop: На следующей сходке 50мл беленькой...
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Автор темы   Непрочитано 07.04.2014, 13:44
#11
Солидворкер
Moderator

Конструктор (машиностроение)
 
Регистрация: 23.10.2006
Россия
Сообщений: 23,258
<phrase 1=


Цитата:
Сообщение от Дима_ Посмотреть сообщение
#4
Offtop: На следующей сходке 50мл беленькой...
Шаман!

Offtop: На такое и 150 мл не жалко...
Солидворкер вне форума  
 
Непрочитано 07.04.2014, 15:25
#12
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от Солидворкер Посмотреть сообщение
150 мл не жалко...
Это уже по сути на троих....
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 10.04.2014, 15:48
#13
sdv79

Инженер ЭОМ
 
Регистрация: 05.03.2009
Москва
Сообщений: 215
Отправить сообщение для sdv79 с помощью Skype™


Создай файл на пример _mySchema clear_copy files.vbs
вставь содержимое в соответствии со своими путями
Код:
[Выделить все]
' автор Сологубов Дмитрий
' email: Sologubov.D.V@gmail.com


' Удаление ВСЕХ файлов в папке:

On Error Resume Next
Set WshShell = WScript.CreateObject("WScript.Shell")
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("d:\Sologubov_D\mySchema")
Set colSubfolders = objFolder.Subfolders
For Each objSubfolder in colSubfolders
errResults = objSubfolder.Delete
Next
Set files_col = objFolder.files
For each file_obj in files_col
file_obj.delete(true)
Next
'WScript.Echo "Очистка d:\Sologubov_D\mySchema завершенна"


' Удаление файла
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.DeleteFile  	"d:\Sologubov_D\Tuning\AutoCAD\AutoLISP\mySchema\mySchema.fas"


' Создание папки получателя:
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CreateFolder  "d:\Sologubov_D"
objFSO.CreateFolder  "d:\Sologubov_D\mySchema"


' Копирование файлов:
Const OverwriteExisting = TRUE
Set objFSO = CreateObject("Scripting.FileSystemObject")

' ---- Program Files ---
'objFSO.CopyFile "myQFlookUP_ODCL.lsp",				"c:\Program Files\mySchema\",OverwriteExisting
'objFSO.CopyFile "mySchema.fas",					"c:\Program Files\mySchema\",OverwriteExisting


' ------- Диск D ------
objFSO.CopyFile  "--- Запусти для установки mySchema ---.dwg", "d:\Sologubov_D\mySchema\",OverwriteExisting
objFSO.CopyFile  "acaddoc.lsp",				     "d:\Sologubov_D\mySchema\",OverwriteExisting


' Копирование папок:
Const OverWriteFiles = True
Set objFSO = CreateObject("Scripting.FileSystemObject")
' ---- Program Files ---
'objFSO.CopyFolder "DB",			"c:\Program Files\mySchema\",OverWriteFiles
'objFSO.CopyFolder "SPDS",			"c:\Program Files\mySchema\", OverWriteFiles


' ------- Диск D ------
 objFSO.CopyFolder "Disk_D",		"d:\Sologubov_D\mySchema\",OverWriteFiles
 objFSO.CopyFolder "DB",			"d:\Sologubov_D\mySchema\",OverWriteFiles


WScript.Echo "Обновление пользовательских данных завершено"
' Типа алерт
' Dim TheExtension
' TheExtension = InputBox("Копирование завершено")
sdv79 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Батник для перемещения файлов в одноименные папки



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ваши сканы, наша обработка и перевод в DJVU. Armin Поиск литературы, чертежей, моделей и прочих материалов 3866 02.04.2025 09:21
DwgRuLispLib: Команда. Загрузка lisp файлов из указанной папки VVA Библиотека функций 7 15.02.2018 10:10
VBA Поочередное открытие файлов DWG из нужной папки ??? sf Программирование 7 21.03.2005 14:50