Как через бат открыть файл в папке
У меня есть много сценариев, с которыми я взаимодействую из командной строки. Каждый раз, когда мне нужно использовать их, я должен открыть окно командной строки и скопировать+вставить и CD в путь к каталогу, в котором они находятся. Это утомительно (они находятся в довольно глубокой файловой системы, поэтому вводить полный путь-это боль, копировать+вставить лучше, но не намного). Я попытался создать .Файл BAT, который я мог бы дважды щелкнуть, откроет новое окно командной строки в папку .bat файл существует в но это не работает. Он открывает новое окно, но рабочий каталог-это не каталог .bat файл по. Вот что у меня есть после долгого гугления (мои навыки cmd не так велики):
Я знаю, когда я использовал Linux, что Konqueror имел функцию "окно командной строки здесь", и это эффект, который я пытаюсь получить в Windows.
автор: Ross Ridgeсоздайте файл с именем open_dos_here.cmd со следующими строками:
автор: Alvin SIUвы, вероятно, хотите сделать это:
это установит ваш текущий каталог в каталог, в котором у вас есть пакетный файл в
автор: Chrisвы можете просто ввести cmd в адресную строку в Проводнике, и она запускается по этому пути. Аналогично для PowerShell.
автор: Joeyесть более простой способ
в Vista и Windows 7 вы получите эту опцию, если вы удерживаете shift и щелкните правой кнопкой мыши (это встроено).
автор: DKnightЯ думаю, что если вы создаете пакетный скрипт, который полагается на текущий каталог, установленный в папку, содержащую пакетный файл, что вы настраиваете себя на проблемы при попытке выполнить пакетный файл, используя полный путь, как вы бы из планировщика.
лучше добавить эту строку в свой пакетный файл:
Если вы не полностью квалифицируете все свои пути.
автор: ChadDдругое решение-использовать файл быстрого доступа к cmd.exe вместо пакетного файла.
изменить ярлык в в начало свойство %
вы достигаете того же самого, за исключением того, что у него есть значок Cmd (и вы можете изменить это).
некоторые люди не любят нажимать на пакетные файлы, не зная, что в них, и некоторые корпоративные сетевые диски имеют запрет.Bat-файл.
автор: andyhasitвы можете добавить запись контекстного меню через реестр:
перейдите в свой реестр HKEY_LOCAL_MACHINE/Software/Classes/Folder/Shell и создайте ключ под названием "Командная строка" без кавычек.
установите строку по умолчанию для любого текста, который вы хотите отобразить в меню правой кнопкой мыши.
создайте новый ключ в только что созданной командной строке с именем "command" и установите строку по умолчанию к
вам может потребоваться добавить %SystemRoot%\system32\ перед cmd.exe, если исполняемый файл не найден.
- изменения должны произойти немедленно. Щелкните правой кнопкой мыши папку, и появится новый пункт меню.
самая простая команда для этого:
start
вы всегда можете запустить в командной строке, чтобы открыть новое окно командной строки в том же месте. Или вы можете поместить его в ваш .Bat-файл.
автор: Michael Kalyginсамый простой способ в проводнике Shift + щелкните правой кнопкой мыши на папке или на пустом месте в папке и нажмите на Open command prompt here .
CMD запустится в этой папке
Я должен сказать, я не уверен, работает ли он для Windows Vista и ниже, но он, безусловно, работает для Windows 7, 8, 8.1 и 10.
автор: Dediqatedможет быть немного старый квест, но для таких, как я гуглить для этого, вы можете удерживать shift и щелкните правой кнопкой мыши папку. Таким образом, меню содержимого будет показывать Открытое командное окно здесь.
автор: Hugo Mesquitaнемного поздно для игры, но если я правильно понимаю ваши потребности, это поможет людям с той же проблемой.
два решения с одним и тем же первым шагом: Сначала перейдите к местоположению, в котором вы храните свои скрипты, и скопируйте путь к файлу в этот каталог.
- Нажмите Кнопку "Пуск"
- Правой Кнопкой Мыши "компьютер" (или "Мой компьютер)
- Нажать Кнопку "Свойства"
- слева нажмите " расширенная система Настройки"
- Нажимаем "Переменные Среды"
- в поле" системные переменные "прокрутите вниз и выберите"путь"
- Нажмите Кнопку "Редактировать"
- в поле" значение переменной " прокрутите весь путь вправо
- если там еще нет двоеточия (;), добавьте его.
- вставить в файлу, который вы скопировали ранее.
- конец с запятой.
- нажмите "OK"
- нажмите " OK " еще раз
- нажмите " OK " один последний раз
теперь вы можете использовать любой из ваших скриптов, а если вы уже были в этой папке.
второе решение: (может быть легко сопряжен с первым для дополнительной полезности)
Скопировать дерево каталогов без файлов
Когда я начинаю делать новые проекты, возникает необходимость получить дерево каталогов, аналогичное старому проектному с той разницей, что в ней не должно быть файлов. Для нового проекта проще добавить 3-5 файлов в нужные пустые папки, чем копировать существующий проект и удалять потом оттуда ненужное.
Получить дерево каталогов без файлов можно при помощи следующей команды:
Команда xcopy берёт за основу дерево каталога по адресу folder_1 и создаёт его копию в папке folder_2 . Ключ /T позволяет осуществить копирование каталогов, не копируя файлы, лежащие в них. Ключ /E уточняет, что копировать необходимо все каталоги, в т.ч. пустые.
Оптимально для получения дерева каталогов нужно открыть командную строку в родительской папке каталога-донора и в этой же папке создать каталог, в который будет помещено копируемое дерево . При этом команде достаточно будет указать имена папки-донора и папки назначения (как в примере выше).
Создание BAT файлов
Люди, которым знаком термин батник , знают, что BAT файлы могут существенно упростить жизнь и экономить время, если уметь их правильно писать и использовать. В этой статье я расскажу о том, как создавать BAT файлы и познакомлю вас с распространенными ошибками, которые обычно возникают при их написании.
Создать BAT файл очень просто. Достаточно открыть блокнот и сохранить пустой лист с расширением .bat , выбрав опцию Сохранить как. и написав в поле Имя файла что-нибудь оканчивающееся на .bat , например test.bat .
Тип файла указываете как на скриншоте ниже - Все файлы . Сохраняете и получаете BAT файл.
Редактировать BAT файл можно в блокноте или любом другом текстовом редакторе, ориентированным на работу с кодом.
Теперь перейдем непосредственно к практической информации. В сети многие ищут ответ на вопрос Как быть с пробелами в BAT файлах? . В путях к папкам и исполняемым файлам наличие пробела вызывает ошибку. Самый распространенный ответ: Заключи путь в кавычки . И этот ответ не верен. Правда некоторые будут с пеной у рта утверждать, что он работает. Итак, появилось два почему - почему не верен и почему некоторые будут .
На Windows (как, впрочем, и на UNIX) установленные в системе программы соответствующим образом регистрируются системой. Поэтому некоторые из установленных программ могут запускаться одной простой командой из BAT файла или из апплета Выполнить панели Пуск . Одной из таких программ является Firefox:
Если после этой команды писать путь к исполняемому файлу, то происходит следующее: запускается обозреватель Firefox и пробует обработать запрос, то есть файл, путь к которому указан. То есть, если указать следующее:
Обозреватель откроется, чтобы не было написано после start firefox . Именно поэтому некоторые товарищи будут уверять что все прекрасно работает. Однако, если взять портативную программу, то ситуация окажется совсем иная. Рассмотрим в качестве примера ftp-клиент Filezilla. Поскольку система не знает о программе, вышеупомянутая строчка
работать не будет. Чтобы запустить неизвестную системе программу, надо указать к ней путь:
Удаление временных файлов перед выключением компьютера
Я думаю, что все как минимум слышали о sms-вирусах или сталкивались с ними лично. Bat-файл поможет вам правильно завершить работу компьютера, удалив временные файлы, в папку с которыми обычно и загружается вирус.
Разумеется, далеко не все вирусы работают по этой схеме, но тем не менее очистка временных файлов и кэша системы перед её выключением значительно снижает такие риски.
Первой запускается программа CCleaner и удаляет все временные файлы на компьютере. Затем запускается программа выключения компьютера с задержкой в 15 секунд, чтобы избежать возможных конфликтов с работой CCleaner.
Необходимо создать BAT-файл и скопировать этот пример в него. Ярлык на bat-файл вывести на рабочий стол, назначить ему красивую иконку и выключать компьютер при помощи этого ярлыка-кнопки.
Bat файлы, примеры
Все опубликованные ниже примеры вы можете выполнить не только через создание и запуск BAT-файла, содержащего эти команды, но и скопировав их напрямую в командную строку .
Чтобы открыть командную строку в нужном месте (в папке с файлами, например), нужно вызвать контекстное меню (ПКМ) с зажатой клавишей Shift :
О том, как работать с командной строкой вы можете прочесть в этой статье. Переходим непосредственно к командам.
Список всех команд консоли с описанием можно получить, набрав в консоли help
Справку по любой команде можно получить при помощи ключа /?
Например: DIR /? выведет справку по всем ключам команды DIR
Пробелы и кавычки в bat-файлах
Кавычки на самом деле работают, но не с теми способами, которые обычно советуют. Советуют обычно следующее:
Так команда не сработает, поскольку если посмотреть справку по ней ( start /? ), то в справке вы увидите следующее:
Как видите, первым параметром идёт заголовок окна и он как раз в кавычках. Этот параметр необязательный, но его всё же советуют указывать (например, тут), чтобы избежать ошибок при выполнении команды. Внутри кавычек можно ничего не писать. Получится так:
Также сработает и вариант с заключением в кавычки всех имён с пробелами по отдельности:
Однако, в ряде случаев не работает ничего из вышеописанного. В таких случаях я могу посоветовать использовать команду cd . Переходим на системный раздел, затем с помощью cd в папку Program Files и запускаем программу ( start ):
Я думаю, что такой способ будет работать везде. Теперь еще пара важных моментов. Допустим вы создали батник, запускающий три программы и вам нужно на время исключить запуск одной из трех. Это можно сделать удалением строки или ее комментированием. Первый способ - вандальный, а второй смотрите ниже.
В данном случае отключен запуск установленной в системе программы Defraggler.exe. Комментируют строки, указывая команду rem в начале строки. Все BAT файлы выполняются в окне консоли. Чтобы оно исчезало по окончании выполнения команд, не забывайте в конце писать команду на выход exit.
Открыть папку в проводнике
1. Можно ли открыть папку как windows explorere с помощи bat файла?
Добавлено через 2 часа 16 минут
Нашла решение 1-го вопроса:
start C:\MyFolder.
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Лучшие ответы ( 3 ) 94731 / 64177 / 26122 Ответы с готовыми решениями:Закрыть папку в проводнике
закрыть папку проводника из кмд строки возможно? примерчик привести можете?
Открыть самую большую папку
Как сделать чтоб открылась самая большая по размеру папка? Например мне нужно скопировать батник в.
Открыть папку с текущей датой
добрий день! Пытаюсь открыть папку с текущей датой, но не получается cd D:\%date:
Как открыть папку с кириллическим именем?
Доброго дня! подскажите пжл как зайти в руссконазванную папку. cd users\гость - не канает.
Батник; открывать файлы в папке после каждого открытия ждать 2 мин
Помогите написать .bat-ник, который бы открывал файлы из папки через каждые 2 минуты по одному пока все файлы из папки по одному разу не будут открыты.
Очередность запуска файлов в папке не важна. Главное, чтобы каждый файл был открыт по одному разу и через 2 минуты от предыдущего.
Вот начало, но мне нужен конец.
Программа поочередного запуска *.swf через цикл for в каталоге диска D:\MyFolder
У меня есть ошибки.
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Лучшие ответы ( 1 ) 94731 / 64177 / 26122 Ответы с готовыми решениями: Как открывать файлы по очереди в папке с разными названиями
Здравствуйте! Нужно написать программу, которая будет открывать по очереди каждый файл(файлы имеют.
На почту пришел файл после открытия которого все файлы превратились в файлы с расширением 1TXT
Прошу помощи, на почту пришел файл после открытия которого все файлы превратились в файлы с.
AutoLogger закрывается сразу после открытия Internet Explorer, файл с логами не появляется в папке
Здравствуйте! Для получения помощи в лечении пытаюсь создать логи с помощью AutoLogger. .
Зашифравались все файлы после открытия письма
Не могу открыть файлы такие как фото музыка ворд эксель и.т.д. они все теперь с разрешением.
Посчитать количество файлов в каталоге
Если нужно посчитать количество файлов в конкретно взятом каталоге, можно воспользоваться следующим кодом:
В подобных примерах часто вставляют строку chcp 1251 > nul, но я предпочитаю выводить все данные в кодировке по-умолчанию. У создаваемых bat-файлов она обычно определяется как OEM(DOS). Поэтому в выводе я использую латиницу и не заморачиваюсь. Для меня это актуально, когда присутствует работа с текстом, как в примерах выше. Команда pause нужна для того, чтобы успеть ознакомиться с результатом выполнения команды. После этого можно нажать любую клавишу и окно консоли закроется.
Читать далее:
Если материалы сайта оказались для вас полезными, можете поддержать дальнейшее развитие ресурса, оказав ему (и мне ) моральную и материальную поддержку.
Похожие статьиЛюди, которым знаком термин батник , знают, что BAT файлы могут существенно упростить жизнь и экономить время, если уметь их правильно писать и использовать. В этой статье я расскажу о том, как создавать BAT файлы и познакомлю вас с распространенными ошибками, которые обычно возникают при их написании.
02 апреля 2010 г.В принципе в командной строке Windows всё просто. Любой, кто умеет печатать, сможет без труда работать в ней. Но для человека непосвященного командная строка может показаться сложной. Чтобы без проблем освоиться, надо знать основные команды и общие правила работы.
Данная статья является вводной и в ней я не буду углубляться в премудрости работы командной строки, опишу принцип работы самой строки, расскажу как работать со справочной информацией и опишу работу с основными командами на простых примерах.
Получить список файлов в папке с помощью Bat-файла
Периодически пользуюсь bat-файлами для получения списков файлов в папках. Частая ситуация: по работе клиенты присылают от фотографа архив с фотографиями. Фотографии имеют названия в соответствии с артикулами товаров.
Никакой текстовой информации, сопровождающей фотографии нет. Необходимо сделать список на основе присланных фотографий и импортировать его в каталог товаров на сайте. Для каждого товара сделано по несколько фото. Они именованы так:
- Фото товара с артикулом А1234.jpg
- Фото товара с артикулом А1234 (2).jpg
- Фото товара с артикулом В1234.jpg
- Фото товара с артикулом В1234 (2).jpg
Сначала я получаю список всех файлов, находящихся в папке при помощи следующей команды:
Команда *.jpg позволит учитывать только JPG-файлы при составлении списка. Ключ /B позволит получить список, содержащий только имена файлов, находящихся в папке. Ключ /L выведет все имена в нижнем регистре. Команда >filelist.txt создаст текстовой файл с именем filelist и запишет резутьтат туда.
Следующим шагом нужно избавиться от дублей, чтобы в списке осталось только по одной записи для каждого товара:
Команда findstr будет осуществлять поиск в ранее полученном файле. Ключ /I позволяет искать записи без учёта регистра, а ключ /V записывает строки, в которых отсутствует искомое совпадение. В кавычках указана строка, совпадение с которой нужно фиксировать. И последняя команда > temp.txt запишет в файл temp все результаты, не содержащие в имени "(2)". В результате я получу:
- Фото товара с артикулом А1234.jpg
- Фото товара с артикулом В1234.jpg
И далее на основе этого текстового списка буду готовить файл для импорта.
Если вам понадобится провести обратную операцию - вывести в файл temp.txt только совпадения, то в списке команд ( findstr /? ) вы не найдёте нужной. Есть только обратный фильтр по точному совпадению - /X .
Для этой задачи можно воспользоваться командой вывода номера строк /N , в которых имеются совпадения (номера выводятся вместе со строкой):
Главное при работе с текстовой информацией (текстовыми файлами) помнить один момент:
Если для текстовых операций вы в качестве исходника используете файл, который создали не через командную строку, он должен быть в кодировке, которая понимается командной строкой. Например, CP1251 (ANSI) .
Иначе рискуете получить на выходе нечто такое:
Решение
87844 / 49110 / 22898Помощь в написании контрольных, курсовых и дипломных работ здесь.
Открытие текстового файла
добрый вечер всем. у меня такая проблема: мне нужно открыть текстовый файл, и найти в нем.
Открытие текстового файла
Доброго времени суток. Как открыть текстовый файл через dosbox? (в моем случае txt-файл)
Открытие текстового файла
День добрый. Я в ассемблере разбираюсь очень плохо, но нужна программа, которая выводит ФИО, а.
открытие текстового файла
Здравствуйте начинающий программиств в 1с, подскажите почему не работает вот этот код: .
Обычный батник на открытие текстового файла
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Лучшие ответы ( 1 ) 94731 / 64177 / 26122 Ответы с готовыми решениями: Может ли батник переименовать файлы, используя данные из текстового файла?
Здравствуйте, подскажите можно ли сделать такой батник - есть txt файл назовём его numbers, в нем.
Открытие ссылок по списку из текстового файла
Добрый вечер, возможно ли открыть список ссылок, которые находятся в текстовом файле через bat?
Открытие текстового файла по перетаскиванию файла на ярлык программы.
С обрабатываю текстовые файлы консольным приложением. Есть рисовальщик -графико построитесь. Но.
Решение
мне нужен конец. Записей в блоге: 1 YuS_2, Спасибо. Работает.Как указать русский путь напр. D:\Загрузки\New Php Видео\HTML\AutoPlay\Videos\SWF. Так можно? Мне нужно писать Загрузки или Download? Любознательный 2034 / 814 / 221 - Здесь просто добавить кавычки, чтобы работали пути с пробелами и если есть символы кириллицы, то сохранить батник в кодировке 866. 87844 / 49110 / 22898
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Батник для открытия сетевой папки
помогите решить проблему!! создаю батник для открытия сетевой папки, не работает. потом через "меню.
Нужен батник для открытия нескольких URL
Здравствуйте. Нужно открыть несколько окон, а лучше вкладок браузера, с адресами Яндекса, гугла.
Где в папке Windows.old после переустановки ОС искать файлы с рабочего стола?
Здравствуйте! Переставлял винду, без форматирования диска без замены, ну вроде как старая винда.
Нужен батник для скрытия процесса в трей и открытия
Суть темы в заголовке, берем любую программу например dicord.exe она работает в оконном режиме.
Файл BAT для открытия CMD в текущем каталоге
У меня есть много сценариев, с которыми я взаимодействую из командной строки. Каждый раз, когда мне нужно использовать их, я должен открыть окно командной строки и скопировать+вставить и CD в путь к каталогу, в котором они находятся. Это утомительно (они находятся в довольно глубокой файловой системы, поэтому вводить полный путь-это боль, копировать+вставить лучше, но не намного). Я попытался создать .Файл BAT, который я мог бы дважды щелкнуть, откроет новое окно командной строки в папку .bat файл существует в но это не работает. Он открывает новое окно, но рабочий каталог-это не каталог .bat файл по. Вот что у меня есть после долгого гугления (мои навыки cmd не так велики):
Я знаю, когда я использовал Linux, что Konqueror имел функцию "окно командной строки здесь", и это эффект, который я пытаюсь получить в Windows.
автор: Ross Ridgeсоздайте файл с именем open_dos_here.cmd со следующими строками:
автор: Alvin SIUвы, вероятно, хотите сделать это:
это установит ваш текущий каталог в каталог, в котором у вас есть пакетный файл в
автор: Chrisвы можете просто ввести cmd в адресную строку в Проводнике, и она запускается по этому пути. Аналогично для PowerShell.
автор: Joeyесть более простой способ
в Vista и Windows 7 вы получите эту опцию, если вы удерживаете shift и щелкните правой кнопкой мыши (это встроено).
автор: DKnightЯ думаю, что если вы создаете пакетный скрипт, который полагается на текущий каталог, установленный в папку, содержащую пакетный файл, что вы настраиваете себя на проблемы при попытке выполнить пакетный файл, используя полный путь, как вы бы из планировщика.
лучше добавить эту строку в свой пакетный файл:
Если вы не полностью квалифицируете все свои пути.
автор: ChadDдругое решение-использовать файл быстрого доступа к cmd.exe вместо пакетного файла.
изменить ярлык в в начало свойство %
вы достигаете того же самого, за исключением того, что у него есть значок Cmd (и вы можете изменить это).
некоторые люди не любят нажимать на пакетные файлы, не зная, что в них, и некоторые корпоративные сетевые диски имеют запрет.Bat-файл.
автор: andyhasitвы можете добавить запись контекстного меню через реестр:
перейдите в свой реестр HKEY_LOCAL_MACHINE/Software/Classes/Folder/Shell и создайте ключ под названием "Командная строка" без кавычек.
установите строку по умолчанию для любого текста, который вы хотите отобразить в меню правой кнопкой мыши.
создайте новый ключ в только что созданной командной строке с именем "command" и установите строку по умолчанию к
вам может потребоваться добавить %SystemRoot%\system32\ перед cmd.exe, если исполняемый файл не найден.
- изменения должны произойти немедленно. Щелкните правой кнопкой мыши папку, и появится новый пункт меню.
самая простая команда для этого:
start
вы всегда можете запустить в командной строке, чтобы открыть новое окно командной строки в том же месте. Или вы можете поместить его в ваш .Bat-файл.
автор: Michael Kalyginсамый простой способ в проводнике Shift + щелкните правой кнопкой мыши на папке или на пустом месте в папке и нажмите на Open command prompt here .
CMD запустится в этой папке
Я должен сказать, я не уверен, работает ли он для Windows Vista и ниже, но он, безусловно, работает для Windows 7, 8, 8.1 и 10.
автор: Dediqatedможет быть немного старый квест, но для таких, как я гуглить для этого, вы можете удерживать shift и щелкните правой кнопкой мыши папку. Таким образом, меню содержимого будет показывать Открытое командное окно здесь.
автор: Hugo Mesquitaнемного поздно для игры, но если я правильно понимаю ваши потребности, это поможет людям с той же проблемой.
два решения с одним и тем же первым шагом: Сначала перейдите к местоположению, в котором вы храните свои скрипты, и скопируйте путь к файлу в этот каталог.
- Нажмите Кнопку "Пуск"
- Правой Кнопкой Мыши "компьютер" (или "Мой компьютер)
- Нажать Кнопку "Свойства"
- слева нажмите " расширенная система Настройки"
- Нажимаем "Переменные Среды"
- в поле" системные переменные "прокрутите вниз и выберите"путь"
- Нажмите Кнопку "Редактировать"
- в поле" значение переменной " прокрутите весь путь вправо
- если там еще нет двоеточия (;), добавьте его.
- вставить в файлу, который вы скопировали ранее.
- конец с запятой.
- нажмите "OK"
- нажмите " OK " еще раз
- нажмите " OK " один последний раз
теперь вы можете использовать любой из ваших скриптов, а если вы уже были в этой папке.
второе решение: (может быть легко сопряжен с первым для дополнительной полезности)
Как указать путь к каталогу в .bat файле?
У меня есть .bat файл, рядом лежит папка (Result).
В папке лежат .jpg файлы с разными именами.
Я пытаюсь написать .bat файле чтобы он все эти файлы в этой папке переименовал.
Он работает, но не полностью. Вот в чём проблема:
Он работает только в том каталоге, в котором находятся файлы.
(Мне нужен .bat файл и папка с файлами рядом с ним. Что-бы так работал).
Вот решение.. Можно просто зайти в папку прописав путь cd /d Result
SetLocal EnableDelayedExpansion Раскрытие переменных через знаки (!)
cd /d Result заходим в папку Result
set "count=1000" переменная в которой я обозначил количество нулей file-001.jpg
set a="*.jpg" переменная обозначает какие файлы ищем.
( dir /b /o:-d /tc %a% )
dir - Позволяет отобразить список файлов и подкаталогов. Далее сортируем.
/b - Вывод только имен файлов.
/o:-d - Сортировка списка отображаемых файлов в обратном порядке (от новых к старым).
/tc - Сортировать по времени создания файла.
%a% - Вызываем переменную.
usebackq Задает возможность использования кавычек для имен файлов Такие вот> ".
Задает исполнение строки, заключенной в обратные кавычки, как командыТакие вот> `,
а строки в одиночных кавычках — как команды в символьной строкеТакие вот> '.
delims=xxx Задает набор разделителей. Заменяет набор разделителей по умолчанию, состоящий из пробела и символа табуляции.
Длинныe имена в bat-файлах
Теперь поговорим о путях и пробелах. Первый способ избежать этой проблемы - использование короткого имени.
В примере два имени с пробелами. Заменим их короткими. Правила создания коротких имен следующие: в коротком имени используются первые шесть символов имени без учета пробелов, после имени указывают порядковый номер папки с помощью символа
. Так как папки Program Files и Sound Club у меня в единственном числе, получится следующее:
Если рядом будут присутствовать две папки, например Sound Club и Sound Clown , то следуя правилам, в примере выше надо будет указать SoundC
2 , так как в этом случае Sound Club окажется вторым именем (имена считаются в алфавитном порядке).
Но этот способ неудобен тем, что приходится указывать порядковые номера. Ситуация с Program files более менее нормальная. Мало у кого встретится две подобные папки на системном диске. Но если вы решили установить несколько продуктов Mozilla на свой компьютер. У вас получится несколько папок, например:
Короткими именами для них будут
А теперь представьте, что вы написали BAT файл с упоминанием этих программ. Если удалить Firefox, оставшиеся записи перестанут работать, а если удалить Thunderbird, перестанет работать запись для Sunbird. Короче, способ с короткими именами - не наш способ.
Запуск приложений из bat-файла
В первой части статьи я в общих чертах рассказал о BAT файлах. Теперь стало понятно - что это такое и с чем его едят. Во второй части речь пойдет уже о более конкретных вещах. Например, о том, как при помощи BAT файла запустить несколько приложений с определенными настройками или в автоматическом режиме установить программу, чтобы не тратить время на ответы типа Вы согласны с условиями лицензионного соглашения? и не нажимать лишние кнопки.
Выше было изложено несколько способов запуска приложений при помощи BAT файла. Самый первый - это короткая команда на запуск установленной в системе программы.
Это не всегда работает. Поэтому такой прием можно вполне применять на какой-то конкретной системе, но в качестве универсального решения он не подходит. Если есть цель заставить работать BAT файл везде и всегда, нужно пользоваться полными путями:
Также я отметил, что в BAT файле обязательно должна присутствовать команда на завершение:
Запуск программ в bat-файлах с параметрами (ключами)
Программу можно не просто запускать, а давать ей дополнительные команды при запуске. Например, скомандовать запускаться свернутой:
Скомандовать в данном случае - значит указать ключ. Ключ указывается через слэш после основной команды ( команда /ключ ). Основной командой в данном случае является start . Правда ключ min работает только в половине случаев, потому как относится именно к команде запуска start , а не к программам, которые эта команда запускает.
Вообще ключей существует очень много и наборы ключей разных программ могут существенно различаться. Есть, правда, несколько общих. Например, ключ справки ( /? или /help ). Чтобы проследить работу этого ключа, рассмотрим практический пример. Откройте консоль (Жмёте + R , вводите cmd , далее Enter ) и набираете в консоли следующее:
Консоль выведет на экран перечень допустимых ключей c комментариями для команды start .
Обратите внимание на ключ /wait . В некоторых случаях он бывает просто незаменим. Например, вы решили с помощью BAT файла распаковать архив с программой и эту самую программу запустить. В батнике получится две команды - на распаковку и на запуск. Поскольку команды при запуске BAT файла выполнятся почти одновременно, архив распаковаться не успеет и запускать будет нечего. Поэтому будет ошибка. В этом случае на помощь придет ключ /wait:
Таким образом система сначала выполнит первое действие, дождется его завершения и только после этого приступит ко второму. Если необходимо подождать конкретный отрезок времени, то проще воспользоваться консольной утилитой Sleep. В нужном месте BAT файла пишете следующую команду (число - количество секунд):
С помощью ключей можно делать многое. Есть возможность устанавливать приложения в тихом режиме. Для этого используется несколько ключей в зависимости от типа инсталятора, применяющегося для установки программы на компьютер:
В ряде случаев бывает очень удобно. Антивирус Avast имеет опцию тихой установки в корпоративной версии. В бесплатной (домашней) версии тихой установки якобы нет. Однако, если вы в курсе как работает инсталятор InstallShield , вы поймете, что это утка , так как этот инсталятор сам по себе поддерживает ключ тихой установки /S . А значит все продукты, выполненные на его базе - тоже. И Avast не исключение. Просто создаете в папке с Avast'ом BAT файл с содержанием
запускаете его и программа устанавливается на компьютер практически без вашего участия. Таким образом можно написать целый список программ для тихой установки и сэкономить время, например, на переустановке системы. В статье про тихую установку можно получить более подробную информацию по ключам.
Есть и другие возможности по управлению программами при помощи BAT файлов. Можно запустить программу, приказав ей открыть файл при запуске. Я пользуюсь этим способом при разработке сайтов. Очень удобно, когда весь твой инструментарий открывает нужные документы и папки нажатием всего одной кнопки:
Отмечу, что все вышеописанные приемы можно применять в различных комбинациях и сочетаниях.
Но важно помнить: всё, что касается выполнения запускаемой в батнике программы, пишется с ней в одной строке.
В качестве эпилога предложу для ознакомления конвертер BAT файлов в приложения формата .exe - Bat_To_Exe_Converter. BAT файл - это не всегда эстетично, а с помощью конвертера можно запаковать батник в exe'шник, оформив его любой иконкой на ваш выбор.
Наткнулся ещё на один конвертер BAT в EXE, можете рассмотреть в качестве альтернативы предыдущей программе: Advanced Bat To Exe Converter
Как в bat файле открыть текстовый документ и написать в нем что-то?
а не документом.
так же, как сделать, чтоб можно было так же писать в нем что то, как на скрине?
Будут рад если поможете Решения вопроса 1
создать текстовый документ с строкой "Hello world. "
echo Hello world. >C:\new.txt
Создать или дописать в конец файла строку:
echo Hello world. >>C:\new.txt
Нахывается это перенаправление вывода в файл.
Просмотреть содержимое текстового файла можно так:
more C:\new.txt
Здравствуйте Александр, спасибо за помощь
я собственно сделал следующее.
Читайте также: