CMD/BAT - Копирование и удаление файла перетаскиванием.
-
avator@vk
CMD/BAT - Копирование и удаление файла перетаскиванием.
Добрый день всем!
Скажите пожалуйста возможно ли сделать так, что бы при перетаскивании произвольного файла на батник или его ярлык, файл копировался в директорию D:/1/ ,а из текущего местоположения удалялся, при этом другие файлы не удалялись?
Скажите пожалуйста возможно ли сделать так, что бы при перетаскивании произвольного файла на батник или его ярлык, файл копировался в директорию D:/1/ ,а из текущего местоположения удалялся, при этом другие файлы не удалялись?
-
avator@vk
Re: CMD/BAT - Копирование и удаление файла перетаскиванием.
Возможно. И первый же вопрос, который возникает: что делать, если в каталоге назначения окажется файл с тем же именем?
-
avator@vk
Re: CMD/BAT - Копирование и удаление файла перетаскиванием.
Цитата Iska:
Возможно. И первый же вопрос, который возникает: что делать, если в каталоге назначения окажется файл с тем же именем?
Круто. Заменить.
Там дальше скрипт его заберёт и очистит директорию.
Возможно. И первый же вопрос, который возникает: что делать, если в каталоге назначения окажется файл с тем же именем?
CMD/BAT - Копирование и удаление файла перетаскиванием.
Круто. Заменить.
Там дальше скрипт его заберёт и очистит директорию.
-
mwz
Re: CMD/BAT - Копирование и удаление файла перетаскиванием.
avator@vk, кстати, всё равно ярлык батника класть — а можно положить вместо него ярлык на D:\1\ и тащить туда файл правой кнопкой мышки, с выбором "Переместить. 

-
avator@vk
Re: CMD/BAT - Копирование и удаление файла перетаскиванием.
Цитата mwz:
кстати, всё равно ярлык батника класть — а можно положить вместо него ярлык на D:\1\ и тащить туда файл правой кнопкой мышки, с выбором "Переместить.
Я думал об этом, мне ещё скрипт надо запустить. Не так красиво будет.
А так взял файлик "бросил" в "черную дыру" и он улетел по smtp и следов от него нет )
кстати, всё равно ярлык батника класть — а можно положить вместо него ярлык на D:\1\ и тащить туда файл правой кнопкой мышки, с выбором "Переместить.
CMD/BAT - Копирование и удаление файла перетаскиванием.
Я думал об этом, мне ещё скрипт надо запустить. Не так красиво будет.
А так взял файлик "бросил" в "черную дыру" и он улетел по smtp и следов от него нет )
-
Iska
Re: CMD/BAT - Копирование и удаление файла перетаскиванием.
avator@vk, вот Вам скрипт WSH:
Скрытый текст
[spoiler]Код:
Сохраните приведённый код в файл с расширением .vbs и пользуйте, как планировали.
Update:[/i]
Цитата avator@vk:
мне ещё скрипт надо запустить.
Можете совместить.
Скрытый текст
[spoiler]Код:
[/spoiler]
Код: Выделить всё
Option Explicit
Const strDestPath = "D:\1"
Dim strSourceFile
Dim objFSO
Dim strContent
If WScript.Arguments.Count = 1 Then
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
strSourceFile = objFSO.GetAbsolutePathName(WScript.Arguments.Item(0))
If objFSO.FileExists(strSourceFile) Then
If objFSO.FolderExists(strDestPath) Then
objFSO.CopyFile strSourceFile, strDestPath & "\", True
If objFSO.FileExists(objFSO.BuildPath(strDestPath, objFSO.GetFileName(strSourceFile))) Then
objFSO.DeleteFile strSourceFile, True
Else
WScript.Echo "Can't copy source file [" & strSourceFile & "] into destination folder [" & strDestPath & "]."
WScript.Quit 3
End If
Else
WScript.Echo "Can't find destination folder [" & strDestPath & "]."
WScript.Quit 3
End If
Else
WScript.Echo "Can't find source file [" & WScript.Arguments.Item(0) & "]."
WScript.Quit 2
End If
Set objFSO = Nothing
Else
WScript.Echo "Usage: Drag any file on me."
WScript.Quit 1
End If
WScript.Quit 0Сохраните приведённый код в файл с расширением .vbs и пользуйте, как планировали.
Update:[/i]
Цитата avator@vk:
мне ещё скрипт надо запустить.
CMD/BAT - Копирование и удаление файла перетаскиванием.
Можете совместить.
-
avator@vk
Re: CMD/BAT - Копирование и удаление файла перетаскиванием.
Да это же чудо!
Какой вы умный. Спасибо огромное. Как вообще можно за несколько секунд написать так.... Супер.
Какой вы умный. Спасибо огромное. Как вообще можно за несколько секунд написать так.... Супер.-
YuS_2
Re: CMD/BAT - Копирование и удаление файла перетаскиванием.
Раз уж cmd/bat, то
Модифицируем его немного, для перемещения:
Код:
- перемещать можно хоть на сам батник, хоть на ярлык, от этого батника...
CMD/BAT - Ярлык для bat
Модифицируем его немного, для перемещения:
Код:
Код: Выделить всё
@echo off
set "folder=d:\1"
if not exist "%folder%" md "%folder%"
for %%i in (%*) do (
move /y "%%~i" "%folder%"
)- перемещать можно хоть на сам батник, хоть на ярлык, от этого батника...
-
megaloman
Re: CMD/BAT - Копирование и удаление файла перетаскиванием.
Паразитирую на решении YuS_2
Код:
Оправдываюсь:
Моё решение годится для файлов и скрытых, и системных, и только для чтения.
Кроме того, мой код отработает и для папок. Если этого не надо, то выделенную строку удалить.
При этом останется контроль при ошибочном указании папки вместо файла.
Код:
Код: Выделить всё
@Echo Off
Set "Folder=Z:\1"
If Not Exist "%Folder%" Md "%Folder%"
For %%i In (%*) Do (
If Not Exist "%%~i\" >nul XCopy /H /R /Y "%%~i" "%Folder%\" &&Del /A "%%~i"
If Exist "%%~i\" >nul XCopy /H /R /E /Y "%%~i\*.*" "%Folder%\%%~nxi\" &&Rd /Q /S "%%~i"
)
pause
Exit /BОправдываюсь:
Моё решение годится для файлов и скрытых, и системных, и только для чтения.
Кроме того, мой код отработает и для папок. Если этого не надо, то выделенную строку удалить.
При этом останется контроль при ошибочном указании папки вместо файла.