Winnity — диалог выбора папки или файла из командой строки
Я никогда не был гуру программирования, скриптования или каким-то подобным "гурой", но подчас написанные несколько строк скрипта сильно экономят время в дальнейшем. Поэтому я частенько пишу простенькие BASH - скрипты в линуксе.
Признаюсь честно, я невероятно ленивый человек, и стараюсь совершать как можно меньше телодвижений. И поэтому я снабдил все BASH-скрипты, принимающие к качестве параметров командой строки путь к папке/файлу, графическим диалогом выбора.
Сегодня я писал что-то похожее на командных файлах Windows, и чётко осознал, что не хочу вызывать cmd-файл с параметрами, вставляя путь к папке вручную. Немного поразмыслив, я быстро набросал winnity.
Winnity - это трёхсоткилобайтное консольное приложение, написаное на Delphi 5 (посему не требующее этих ваших .NET framework и работающее в системах начиная с Windows 2000 и выше) .
Его основное назначение - выводить диалог выбора папки или файла. Всё, что выбрал пользователь, выводится в командную строку. Если пользователь нажал отмену - программа выводит пустую строку.
Как пользоваться Winnity
Предполагается, что программа будет вызываться из командного файла, чем-то похожего на этот:
- Код: Выделить всё
for /F "delims=" %%i in ('winnity /d') do (
dir %%i )
for /F "delims=" %%i in ('winnity /f') do (
notepad.exe %%i )
for /F "delims=" %%i in ('winnity /d') do (set x=%%i )
echo %x%
Программа "понимает" такие ключи командной строки
winnity /d - вызов окна выбора директории
winnity /f - вызов окна выбора файла
Обновлено 11.01.2012:
Следующие два ключа добавлены по просьбе участников сообщества Oszone и работают только в режиме "файлового" диалога:
winnity /f /m - разрешить выбирать несколько файлов в диалоге открытия файла.
winnity /f "/e=*.jpg *.bmp" - использовать фильтр по типам файлов. В данном случае, по JPG и BMP.
Ключ /m совместим с ключом /e. При вызове утилиты в команде FOR необходимо всегда заключать ключ /e в кавычки:
- Код: Выделить всё
for /F "delims=" %%i in ('winnity /f "/e=*.txt"') do (
notepad.exe %%i )
Таким образом, если вам потребуется часто вызывать командный файл, который требует в качестве параметров пути/имена файлов, вы можете добавить в него вызов winnity и сэкономить себе немного времени.
Скачать winnity:
- Мой



Свежие комментарии