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

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

Ответить
Настройки темы
CMD/BAT - [решено] Переименовывание файла. В пути есть пробелы.

Новый участник


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

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


Изменения
Автор: starzkv
Дата: 09-07-2009
Как можно переименовать файл? В пути к файлу есть пробелы.
Цитата:
REN C:\Program Files\IVT Corporation\BlueSoleil\setup.dll 1.dll
Вот так не получается.
Подскажите, пожалуйста, решение.

С уважением, Константин.

Отправлено: 10:32, 09-07-2009

 


Moderator


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

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


starzkv, возьмите в кавычки.
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:38, 09-07-2009 | #2



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

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


Новый участник


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

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


Цитата:
REN "C:\Program Files\IVT Corporation\BlueSoleil\setup.dll" "1.dll"
Спасибо огромное. Помогло. Что то я упустил это из виду.
Еще раз спасибо.

С уважением, Константин.

Отправлено: 10:42, 09-07-2009 | #3


Аватара для zeroua

Ветеран


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

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


​Не хочу создавать новую тему, вопрос такой:

как мне переименовать

Код: Выделить весь код
ren *.msi [имя исполняемого файла].msi
, скажем чтобы выдался запрос на переименовывание любого *.msi пакета в *.msi пакет с заданным именем, либо это тянулось скажем с текстового файла.

На сколько я понял это можно все реализовать через команду dir и цикл но я не очень пока это представляю, в целом хочется чтобы новое имя *.msi пакета было такое же как и у *.cmd в котором будет переименовывание. Например есть "этомсипакет.msi", имя *.cmd (pack.cmd), и команда по типу ren переименует этомсипакет.msi в pack.msi

-------
лучше по утру на Google Earth искать ГДЕ ты пил, чем на youtube КАК...
http://forum.oszone.net/image.php?type=sigpic&userid=68333&dateline=1203429944


Последний раз редактировалось zeroua, 07-02-2011 в 17:22.


Отправлено: 15:29, 07-02-2011 | #4


Старожил


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

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


Цитата zeroua:
хочется чтобы новое имя *.msi пакета было такое же как и у *.cmd в котором будет переименовывание »
Не очень понятна постановка задачи.
Внутри батника-то можно это прописать.
Код: Выделить весь код
ren этомсипакет.msi %~n0.msi

Последний раз редактировалось SendMessage, 08-02-2011 в 07:39.


Отправлено: 07:28, 08-02-2011 | #5


Аватара для gora

Ушёл из жизни


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

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


zeroua, так?
Код: Выделить весь код
::Папка, где ищем .msi файл (он должен быть один, иначе все файлы должны быть переименованы в одно имя!!!)
Set folder=My folder

For %%i In ("%folder%\*.msi") Do Del /Q "%~n0.msi" & Ren "%%~i" "%~n0.msi"

Отправлено: 09:41, 08-02-2011 | #6


Аватара для zeroua

Ветеран


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

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


есть кусочек скрипта он работает так как надо, но не так как я хочу:

Код: Выделить весь код
ren *.msi %~n0.msi
MD %~dpn0
msiexec /a %~n0.msi /qn TARGETDIR="%~dpn0"
Мне бы хотелось чтобы в данном случае все работало даже если в папке 2 *.msi пакета, их отличие будет лишь в числах 32 и 64.Нужно чтобы 32-х битный пакет сделал административную установку в папку [name32], а 64-х в [name64], но при такой конструкции мне желаемого результата не достигнуть.

name это имя исполняемого файла(*.cmd ).

-------
лучше по утру на Google Earth искать ГДЕ ты пил, чем на youtube КАК...
http://forum.oszone.net/image.php?type=sigpic&userid=68333&dateline=1203429944


Отправлено: 09:59, 08-02-2011 | #7


Аватара для gora

Ушёл из жизни


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

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


zeroua
1 Приведите конкретные имена .msi файлов и их расположение относительно батника
2 В чем смысл их переименования при создании админ. точки? Чем не устраивают родные имена .msi файлов?
3 Эти имена являются фиксированными или они могут быть разными при запуске скрипта (приведите возможные варианты)?

Отправлено: 10:12, 08-02-2011 | #8


Аватара для zeroua

Ветеран


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

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


2 gora

1. 4 стандартных имени, если скачаны они с офф сайта. (2 для х32 и 2 для х64) eav_nt32_rus.msi; eav_nt64_rus.msi; ess_nt64_rus.msi, ess_nt32_rus.msi, но названия могу быть и другими, по поводу расположения, лучше скажем чтобы пакеты лежали в папке (downloads), ну а батник выше уровнем(как-то так)
2. привожу их к формату 8.3 (привычка приводить имена пакетов к формату 8.3)
3. нагляднее когда фиксированные названия, имхо.

-------
лучше по утру на Google Earth искать ГДЕ ты пил, чем на youtube КАК...
http://forum.oszone.net/image.php?type=sigpic&userid=68333&dateline=1203429944


Отправлено: 10:58, 08-02-2011 | #9


Аватара для gora

Ушёл из жизни


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

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


zeroua, так?
Код: Выделить весь код
@Echo Off
SetLocal enabledelayedexpansion
:: Папка, где ищем .msi файлы
Set folder=My folder
:: Новые имена файлов (впишите какие нравятся)
:: Новые имена не должны содержать сочетаний символов по которым 
:: производится поиск оригинальных имен, а именно: eav_ ess_ t32
Set NewName1=EAVx86ru
Set NewName2=EAVx64ru
Set NewName3=ESSx86ru
Set NewName4=ESSx64ru

For %%i In ("%folder%\*.msi") Do (
	Set ti=%%~ni
	If Not "!ti:eav_=!"=="!ti!" If Not "!ti:t32=!"=="!ti!" (Call :_ren "%%i" "%NewName1%") Else Call :_ren "%%i" "%NewName2%"
	If Not "!ti:ess_=!"=="!ti!" If Not "!ti:t32=!"=="!ti!" (Call :_ren "%%i" "%NewName3%") Else Call :_ren "%%i" "%NewName4%"
)
Exit

:_ren
Del /Q "%~2.msi"
Ren %1 "%~2.msi"
GoTo :EOF

Отправлено: 11:52, 08-02-2011 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] *chm не работает, если в пути есть "#" Erekle Хочу все знать 15 20-02-2019 00:00
CMD/BAT - [решено] Добавление пути(ей) в системные переменные (path) с помощью cmd-файла bearmvz Скриптовые языки администрирования Windows 10 05-08-2012 15:21
C/C++ - Создание файла, по указанному пути S1stem Программирование и базы данных 1 01-08-2008 04:05
Просмотр пути используемого файла maslinaV Microsoft Windows NT/2000/2003 6 25-06-2008 13:43
[решено] переименовывание пользователя charli22 Microsoft Windows 2000/XP 5 28-02-2006 16:12




 
Переход