Войти

Показать полную графическую версию : [решено] Перемещение файла в AppData пользователя с помощью bat-ника


Stalker_AleX333
10-02-2017, 19:39
Народ, выручайте! Необходимо накатать батник, копирующий определенный файл из папки откуда он запускается, в AppData пользователя на системном диске.
Т.е.: 1. Определить системный диск (не у всех это С, всякое бывает). 2. Переместить файл (в данном случае, Plugins.txt) в AppData\Local\SR_data (если последней папки нет - создать) 3. Удалить сам файл батника.

Что-то вроде этого:

@echo off
:: for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( -- определить диск?? юзать %windir%?
@move /b Plugins.txt c:\%localappdata%\local\sr_data
@del /F /Q /S silver_raven_mods_pack_plugins.bat

greg zakharov
10-02-2017, 21:26
@echo off
setlocal
set "dest=%appdata%\Local\SR_data"
if not exist "%dest%" md "%dest%"
move "%~dp0Plugins.txt" "%dest%"
endlocal
2>nul goto&rundll32 advpack.dll,DelNodeRunDLL32 "%~f0"
%apdata% уже содержит букву системного диска.

megaloman
10-02-2017, 21:40
@Echo Off

Set "BoxOut=%LOCALAPPDATA%\SR_data"
Set "FileIn=Plugins.txt"

If Not Exist "%BoxOut%" Md "%BoxOut%"
Move /Y "%~dp0%FileIn%" "%BoxOut%\" >nul && Del "%~dpnx0"

Stalker_AleX333
10-02-2017, 21:47
Все работает как надо, спасибо. Окошко батника будет мелькать (буквально на пол-секунды) в любом случае? Или его можно "подавить" полностью?

upd. Протестировал прямиком из инсталятора, в который этот батник встраивался. Там окно cmd не мелькает. Вопрос снят.




© OSzone.net 2001-2012