Чи можна використовувати пакетний файл для виділення певного формату файлу?


1

Я експериментував з командними файлами останнім часом, і нещодавно я знайшов відповідь на старе запитання: Hilight / виберіть файл з пакетним сценарієм . Тепер, коли я виконав це, я хотів би знати, чи можна використовувати той же метод з змінною формату (тобто * .txt). Більш конкретно, я хотів би створити скрипт, щоб зробити те ж саме для файлів зображень, як .jpg, і .png, які шукають все вказаних форматів на певному диску або шляху. Це шаблон, який я використав:

%SystemRoot%\explorer.exe /select, "%TARGET%"

Я вже намагався просто помістити змінні * .jpg та * .png у місці% TARGET% як з лапками, так і без лапок. я також добре усвідомлюючи, що це може зайняти величезну кількість часу, враховуючи кількість зображень, продуктивність комп'ютера, тощо ... Будь-яка допомога оцінена.


У мене недостатньо досвіду з цим, але я припускаю, що спочатку потрібно перерахувати список файлів, а потім розібрати це як ціль.
LPChip

Чому? Все, що мені потрібно було зробити, це використовувати той самий рядок коду в моєму попередньому сценарії, і створити новий рядок для кожної цілі. Коли ця мета виконується, кожна мета була б представлена ​​і освітлена одночасно. Я можу уявити, що використання тільки формату або іншої звичайної змінної призведе до того, що скрипт зробить те ж саме, починаючи з кореневого шляху сценарію. Але я все ще досить новий для пакетного програмування.
Mr. Mendelli

1
інструменти командного рядка можуть використовувати шаблони. Так, так, ви можете del * .jpg. Але передаючи це досліднику, не впевнений, що дослідник знає, що з ним робити. Тому я думаю, що вам потрібно піти в напрямку першого створення списку. Наприклад forfiles *.jpg ....
LPChip

1
Я пропоную вам використовувати FreeCommander / Total Commander / Far Manager, всі вони можуть вибрати / виділити за допомогою клавіші [плюс] і шаблону.
LotPings

1
Г-н Менделлі - Я знаю, що спізнююся до гри, але думав, що додаду цю відповідь, оскільки я перебіг цю посаду і мав щось, що треба було трохи змінити, щоб працювати, як ви описуєте.
Pimp Juice IT

Відповіді:


2

Чи можна використовувати пакетний файл для виділення певного формату файлу?

Ви, безумовно, можете використовувати пакетний скрипт для вибору всіх (або виділити всі) файли з певним розширенням файлів, які знаходяться в одній папці за допомогою sendkeys і cscript як приклад нижче.

Приклад пакетного сценарію

Обов'язково змініть значення SET Extension= і SET Folder= змінні, які повинні бути достатніми для потреби.

Зверніть увагу, що якщо ви хочете шукати декілька розширень файлів за допомогою цього методу, тоді значення змінної SET Extension= Для кожної змінної повинно бути розділене OR наприклад, якщо ви хочете бачити файли TXT, PDF і BMP, ви повинні використовувати SET Extension=*.txt OR *.pdf OR *.bmp.

@ECHO ON

SET Folder=C:\Users\User\Desktop\Test
SET Extension=*.txt
:::SET Extension=*.txt OR *.pdf OR *.bmp
EXPLORER "%Folder%"

:VBSDynamicBuild
SET TempVBSFile=%temp%\~tmpSendKeysTemp.vbs
IF EXIST "%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
ECHO Set WshShell = WScript.CreateObject("WScript.Shell") >>"%TempVBSFile%"
ECHO Wscript.Sleep 900                                    >>"%TempVBSFile%"
ECHO WshShell.SendKeys "{F3}"                             >>"%TempVBSFile%"
ECHO Wscript.Sleep 900                                    >>"%TempVBSFile%"
ECHO WshShell.SendKeys "%Extension%"                      >>"%TempVBSFile%"
ECHO Wscript.Sleep 900                                    >>"%TempVBSFile%"
ECHO WshShell.SendKeys "{TAB 2}"                          >>"%TempVBSFile%"
ECHO Wscript.Sleep 900                                    >>"%TempVBSFile%"
ECHO WshShell.SendKeys "^a"                               >>"%TempVBSFile%"

CSCRIPT //nologo "%TempVBSFile%"

EXIT

Примітка: Вищезазначений сценарій тестувався з Windows 10 . Якщо ви використовуєте Windows 7 , потрібно обов'язково використовувати "{TAB 3}" скоріше   ніж "{TAB 2}" тому він тричі натискає клавішу табуляції.


Подальші ресурси


Оце Так! Дякую. Я думав, що це буде неможливо вирішити за допомогою пакетного сценарію. Дякуємо за Ваші зусилля!
Mr. Mendelli

Все, що мені потрібно зробити зараз, це програмувати сценарій для пошуку декількох розширень одночасно.
Mr. Mendelli

1
@ Mr.Mendelli Це можна тут просто використовувати SET Extension=*.txt OR *.pdf OR *.bmp як це на місці SET Extension=*.txt. Дайте мені знати, якщо це допомагає, або у вас все ще є проблеми.
Pimp Juice IT

Я думав, що слід зазначити, що використовую {TAB 2} на Windows 7, здавалося, не впливає, і що сценарій працював так чи інакше ...
Mr. Mendelli

@ Mr.Mendelli Я повинен був зробити це {TAB 3} на машині Windows 7 я тестував його. Ви говорите, що він працював на вашій системі Windows 7 як є в прикладі сценарію, який я надавав?
Pimp Juice IT
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.