Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Переименовать и запустить

Ответить
Настройки темы
CMD/BAT - Переименовать и запустить

Аватара для Dodakaedr

Ветеран


Сообщения: 863
Благодарности: 262


Конфигурация

Профиль | Отправить PM | Цитировать


Здравствуйте, дайте, пожалуйста, пример вот такого батника: имеется файл *.dat в папке Арр теперь его надо переименовать в *.exe и запустить.....вот и все, вроде не сложно, но не знаю как сделать.

-------
Inno Setup 5 Ultra Unicode


Отправлено: 20:05, 18-07-2014

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Dodakaedr, «Арр» или «App»:



?! Я решил, что таки «App», а не «Арр».

Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

for /f "usebackq delims=" %%i in (
	`dir /b /a:-d "App\*.dat" 2^>nul`
) do (
	ren "App\%%~i" "%%~ni.exe"
	"App\%%~ni.exe"
	goto :Out
)

:Out

endlocal
exit /b 0
Это сообщение посчитали полезным следующие участники:

Отправлено: 00:04, 19-07-2014 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Dodakaedr

Ветеран


Сообщения: 863
Благодарности: 262

Профиль | Отправить PM | Цитировать


Iska, Спасибо! Но оказалось этот способ не работает, так как запускается командная строка. Можно как-то указать запуск именно на dat файл и при этом запретить запуск командной строки? И как вы так определили какой именно App нужен?

-------
Inno Setup 5 Ultra Unicode


Отправлено: 12:43, 19-07-2014 | #3


Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


Цитата Dodakaedr:
Можно как-то указать запуск именно на dat файл и при этом запретить запуск командной строки? »
Код: Выделить весь код
@echo off
set pathext=%pathext%;.dat
for %%i in ("App\*.dat") do start "" "%%i"& exit /b
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:30, 19-07-2014 | #4


Аватара для Dodakaedr

Ветеран


Сообщения: 863
Благодарности: 262

Профиль | Отправить PM | Цитировать


Georgio, Спасибо! Но командная строка по прежнему запускается... надо наверное сделать следующее: запустить dat файл а с ним автоматом запускается командная строка, и вот эту самую строку запустить в скрытом режиме а потом когда запуститься программа закрыть строку. Реально такое сделать?

-------
Inno Setup 5 Ultra Unicode


Отправлено: 17:22, 19-07-2014 | #5


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Dodakaedr, выкладывайте Ваш «*.dat», упаковав его в архив.

Цитата Dodakaedr:
И как вы так определили какой именно App нужен? »
На картинке видно.

Отправлено: 18:50, 19-07-2014 | #6


Аватара для Dodakaedr

Ветеран


Сообщения: 863
Благодарности: 262

Профиль | Отправить PM | Цитировать


Цитата Iska:
На картинке видно. »
Вижу! И что оно такое: программа, сервис???
Цитата Iska:
выкладывайте Ваш «*.dat», упаковав его в архив. »
Вот Ссылка

-------
Inno Setup 5 Ultra Unicode


Отправлено: 20:15, 19-07-2014 | #7


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата Dodakaedr:
Вижу! И что оно такое: программа, сервис??? »
Вы писали, что это имя папки:
Цитата Dodakaedr:
в папке Арр »
при этом обозвали её в тексте по-русски «Арр». Я же решил, что сие навряд ли может быть, и имя папки скорее всего должно быть на латыни — чему, собственно, и служит подтверждением имя папки на латыни в выложенном архиве.

Цитата Dodakaedr:
Вот Ссылка »
У меня мой код отработал корректно, переименовав «App\WinUtilities.dat» в «App\WinUtilities.exe» и запустив его. При этом внутри «App» была создана структура каталогов/файлов в папке «WinUtilities». Аналогичным образом отработал и код коллеги Georgio.

Цитата Dodakaedr:
Но командная строка по прежнему запускается... надо наверное сделать следующее: запустить dat файл а с ним автоматом запускается командная строка, и вот эту самую строку запустить в скрытом режиме а потом когда запуститься программа закрыть строку. »
Окно консоли, которое Вы почему-то ошибочно называете «командной строкой», относится непосредственно к исполняемому файлу «WinUtilities.dat», имеющему тип «Win32 console» .

Цитата Dodakaedr:
Реально такое сделать? »
Откуда Вы брали этот самый «WinUtilities.dat»? Источник происхождения каков7

Отправлено: 23:19, 19-07-2014 | #8


Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@echo off
for %%i in ("App\*.dat") do (
 mshta "vbscript:CreateObject("WScript.Shell").Run("cmd"&chr(32)&"/c"&chr(32)&chr(34)&"%%i"&chr(34),0,False)&close"
 exit /b
 )
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:20, 19-07-2014 | #9


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Или так:
Код: Выделить весь код
@set @x=0 /*
@echo off

for /f "usebackq delims=" %%i in (
	`dir /b /a:-d "App\*.dat" 2^>nul`
) do cscript /nologo /e:javascript %0 & goto:eof */
WScript.CreateObject('WScript.Shell').Run('cmd.exe /c"App\\WinUtilities.dat"', 0, false);
Но проще сменить Subsystem с CUI на GUI.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:32, 19-07-2014 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Переименовать и запустить

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
8 / 2012 - Переименовать папку SOURCES XOMbl4 Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista 13 11-05-2014 21:34
Загрузка - [решено] Как запустить запустить файл в зависимости от пользователя? leonid.poydolov@fb Microsoft Windows 7 2 15-03-2013 15:37
CMD/BAT - Переименовать набор фото Андрей_Угаров@vk Скриптовые языки администрирования Windows 2 02-12-2012 18:22
Переименовать дисковод 881z1 Хочу все знать 0 13-02-2010 22:27
[решено] Переименовать файл cra5h_ AutoIt 12 11-01-2010 16:58




 
Переход