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

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

Ответить
Настройки темы
CMD/BAT - Создание макси для Total Commander

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


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

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


Добрый день. Перейду сразу к сути дела. Необходим батник, который сохранял бы имена файлов из папки в которой лежит в текстовой документ, блокнот например.
Теперь подробнее. Есть некая папка, где лежит n-ное количество файлов в одном расширении, имена у всех разные по типу ABV#123456.qst букв может быть и больше, так вот, надо чтобы батник заменял часть имени идущую с "#" на "*", то есть ABV* и сохранял результат по всем файлам в текстовой документ, чтобы конечный результат выглядел следующим образом в одну строку: abv* abc* asd* ghj*... и тд. Такое возможно?

Отправлено: 13:30, 13-10-2017

 

Ветеран


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

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


На WSH:
Скрытый текст
Код: Выделить весь код
Option Explicit

Dim strSourceFolder

Dim objFSO
Dim objFile

Dim strValue


If WScript.Arguments.Count = 1 Then
	strSourceFolder = WScript.Arguments.Item(0)
	
	Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
	
	If objFSO.FolderExists(strSourceFolder) Then
		With WScript.CreateObject("VBScript.RegExp")
			.Pattern = "(.+)#.*"
			
			For Each objFile In objFSO.GetFolder(strSourceFolder).Files
				If .Test(objFile.Name) Then
					If IsEmpty(strValue) Then
						strValue = .Execute(objFile.Name).Item(0).Submatches.Item(0) & "*"
					Else
						strValue = strValue & " " & .Execute(objFile.Name).Item(0).Submatches.Item(0) & "*"
					End If
				End If
			Next
			
			With objFSO.CreateTextFile(objFSO.BuildPath(strSourceFolder, "Result.txt"))
				.Write strValue
				.Close
			End With
		End With
	Else
		WScript.Echo "Can't find source folder [" & strSourceFolder & "]."
		WScript.Quit 2
	End If
	
	Set objFSO = Nothing
Else
	WScript.Echo "Usage: wscript.exe """ & WScript.ScriptName & """ <Source folder>"
	WScript.Quit 1
End If

WScript.Quit 0

Исходная папка задаётся параметром скрипта. Для Total Commander можно использовать меню запуска, панель инструментов и т.п. с аргументом «"%P"».

А что Вы потом с содержимым этого файла делать будете?
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:50, 13-10-2017 | #2



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

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


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


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

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


Iska, Не работает, либо я делаю что то не так. Файл нужен для создания шаблона маски в тотале для последующего копирования файлов по нему.

Последний раз редактировалось Viberezh, 13-10-2017 в 18:02.


Отправлено: 17:41, 13-10-2017 | #3


Ветеран


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

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


1. Скопируйте код в буфер обмена.
2. Откройте Блокнот.
3. Вставьте скопированный код из буфера обмена в Блокнот.
4. Сохраните содержимое Блокнота в любую папку под любым именем, с расширением «.vbs» в кодировке ANSI/1251.
5. В Total Commander'е добавьте новый пункт меню «Запуск» в виде:
Скрытый текст

где:
1) название пункта меню;
2) имя интерпретатора скриптов («wscript.exe» или «сscript.exe»);
3) путь и имя к сохранённому в п.4. файлу с кодом;
4) параметр скрипта, куда при исполнении Total Commander вместо «%P» подставит текущий путь с активной панели.

6. Выберете пункт меню, находясь в искомом каталоге:
Скрытый текст

7. Обновите активную панель, нажав Ctrl-R, дабы увидеть файл с результатами «Result.txt»:
Скрытый текст


P.S. Понял Вашу задумку — \Выделение\Загрузить выделение из файла, оно?
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:19, 13-10-2017 | #4


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


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

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


Сделал всё по инструкции.

Вот для этого надо.

Отправлено: 22:26, 13-10-2017 | #5


Ветеран


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

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


Цитата Viberezh:
Сделал всё по инструкции. »
Почти. Угловые кавычки вокруг %P — лишние. Смотрите, в моём примере их нет:
Скрытый текст

— только обычные двойные. Вероятно Вы взяли их из текста п.5.4 — не надо, уберите угловые и оставьте только двойные.
Это сообщение посчитали полезным следующие участники:

Отправлено: 00:05, 14-10-2017 | #6


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


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

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


Iska, спасибо большое, всё работает! А чтобы скрипт работал в тотале с флешки его лучше в папку с тоталом закинуть, и не будет ли конфликта пути с буквой флешки на разных компах?

Отправлено: 11:32, 14-10-2017 | #7


Ветеран


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

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


Цитата Viberezh:
и не будет ли конфликта пути с буквой флешки на разных компах? »
Будет.

Цитата Viberezh:
его лучше в папку с тоталом закинуть »
Не стоит его захламлять. Лучше создайте внутри какой-нибудь каталог, например, «My Scripts», и поместите скрипт туда. Тогда путь может выглядеть как «"%COMMANDER_PATH%\My Scripts\Имя скрипта.vbs"»:
Скрытый текст
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:53, 14-10-2017 | #8


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


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

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


Iska, Огромное спасибо! Всё прекрасно работает!

Отправлено: 12:01, 14-10-2017 | #9


Ветеран


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

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


Viberezh, а знаете, как всё вышеизложенное выглядит в Far Manager'е, включая и само выделение файлов?
Код: Выделить весь код
lua:Keys('Add CtrlY') print('/.+#.*/') Keys('Enter')
И всё .

Отправлено: 12:13, 14-10-2017 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Система - [файл-менеджер] Total Commander (бывший Windows Commander) Nealles Программное обеспечение Windows 349 23-02-2019 20:16
аналог total commander для мак r-studio Хочу все знать 1 25-04-2015 17:53
Интернет - Как отключить в Windows viste учетную запись для Total Commander чтобы прописать FTP VolkovDenis Microsoft Windows Vista 1 04-05-2010 20:34
Вопросы по теме "Кнопка для работы с 7z SFX архивами в Total Commander." ya158 Автоматическая установка Windows 2000/XP/2003 4 18-11-2009 22:20
Плагин для Total Commander, что это? Serg170580 Хочу все знать 1 18-02-2003 10:18




 
Переход