Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
vp-cosmos
6 лет назад

О параметрах командной строки на полезном примере Telegram

Рубрика "It"

Авторское изображение на основе скриншотов

Хотя сегодня это прозвучит и странно, но большая часть истории ЭВМ является временем текстовых интерфейсов. Графические оболочки появились лишь немногим более 20 лет назад, а первые компьютеры разрабатывались в 40-х годах прошлого века. Долгое время человек общался с машиной и видел лишь белые буквенноцифровые символы на чёрных экранах.

До сих пор так и поступают администраторы nix систем. Однако сейчас, в дополнение к интерфейсу терминала, нередко пользуются двухпанельными менеджерами вроде Midnight Commander. Работая в Windows, независимо от того сервер это или рабочая станция, как-то постепенно уходишь от текстовых интерфейсов. Тем более, что инструментарий для работы с ними в системе до последнего времени был весьма ограничен, а Power Shell появился поздно, когда люди уже привыкли работать мышкой.

Тем не менее, есть одна деталь, которая будет весьма полезна сейчас для ряда программ под Windows, - параметры командной строки.

Запустить всё и сразу

Во время запуска программы ей сразу можно передать набор команд. Когда кликаете по документу Word, система запускает его, передавая имя файла. Все параметры пишутся через пробел в той же строке, начинаются они сразу после имени вызываемой программы.

Вот пример запуска майнера:

EthDcrMiner64.exe -epool etc.2miners.com:1010 -ewal 0xD4a26761B9c62e3862a0C7f562Ff1FDBe2b2433e -eworker rig1 -epsw x -di 0 -gser 2 -allcoins etc -allpools 0 -mode 1 -dbg -1 -mport 0 -etha 0 -retrydelay 3 -ftime 45 -tt 68 -ttli 74 -tstop 77 -fanmin 30

"EthDcrMiner64.exe" - это имя исполняемого файла - программы, которая будет запущена. Остальное как раз и есть параметры командной строки. Благодаря такому подходу некоторые программы позволяют создавать целые сценарии поведения. Например, BSPlayer (и скорее всего ряд других проигрывателей) можно запустить с парамтерами таким образом, что он откроется во весь экран и будет показывать фильм с диска. Когда он закончится, программа закроется. Откроется лоток дисковода. Это удобно. Этим и пользовались разработчики автозапусков дисков с фильмами, в частности я, но их время ушло. Использовать параметрический ряд после имени вызываемого файла стало требоваться всё реже, а майнеры шли уже с примерами команд.

Следует заметить, что каких-либо стандартов для параметров командной строки не существует. Всё на совести разработчиков конкретной программы, хотя, как правило, многие придерживаются неких традиций. К примеру, для того, чтобы вызвать справку, часто нужно добавить один из параметров ?, /? или -?.

Поскольку в параметрическом ряде разделителем является пробел, то в случае передачи пути его следует заключить в кавычки. Иначе этот путь будет воспринят, как два и более различных параметра в зависимости от количества пробелов.

А теперь к делу

Все мы вынуждено любим Телеграм и у многих двухкарточные телефоны, которые позволяют говорить ещё более выгодно с абонентами разных мобильных операторов. Разработчики Telegram долго не обращали внимания на данный факт, и их продукт не поддерживал мультиаккаунты, что огорчало пользователей с раздвоением личности. Потом в версию для смартфонов данная поддержка была добавлена. Ну, а на ПК её нет до сих пор. Именно здесь нам помогут параметры командной строки Телеграм, а точнее два параметра - -workdir и-many.

Параметр -workdir позволяет задать папку профиля. Это может быть полезно и в случае, если вы используете лишь одну учётную запись, но предпочитаете хранить личные данные в отдельной папке. Имея такую, вы всегда сможете восстановить доступ к Телеграм без подтверждения номера телефона.

Параметр -many должен позволять запускать несколько копий Телеграм. Но в одиночку запуск с ним вызывает ошибку, поскольку для работы Телеграму нужен монопольный доступ к папке профиля:

Собственный скриншот

Если же дважды или более раз вызвать Телеграм с разными параметрами -workdir, то откроется соответствующее количество самостоятельных копий, готовых к работе с разными учётными записями. Каждая копия будет самостоятельной.

Собственный скриншот

Чтобы сделать это, нужно либо добавить соответствующие параметры в свойства ярлыка через пробел после пути к вызываемому файлу:

Собственный скриншот

Либо создать новый файл с требуемым содержанием и присвоить ему расширение bat или cmd.

Для этого достаточно лишь команды -workdir, но всё-таки лучше использовать одновременно ещё и -many. Мало ли, как поведёт себя при обновлениях Телеграм без принудительного разрешения на множественный запуск. Итоговый пример кода выглядит так:

"С:\Program Files\Telegram\program\Telegram.exe" -many -workdir c:\user1\

"С:\Program Files\Telegram\program\Telegram.exe" -many -workdir "c:\another user\"

Ещё раз обращаю внимание на кавычки. Если о них забыть, то при запуске высветится ошибка: "Не удалось найти C:\Program". Вторая папка также взята в кавычки, поскольку и в её имени есть пробел.

Автор @Fainder

Вычитка ФилФак

54
241.402 GOLOS
На Golos с October 2017
Комментарии (5)
Сортировать по:
Сначала старые