[CMD] Создание пакетного файла из командной строки, в одну команду

alex-s

Активный пользователь
Сообщения
21
Реакции
1
Баллы
83
Мне нужно создать файл вот такого содержания

CMD/BATCH:
@echo off
IF "%1"=="-a" (ipconfig /all) ELSE (@IF "%1"=="-?" (ipconfig /?) ELSE (ipconfig %1 %2))


Но в командной строке я могу создать файл только так

CMD/BATCH:
echo IF "%1"=="-a" (ipconfig /all) ELSE (@IF "%1"=="-?" (ipconfig /?) ELSE (ipconfig %1 %2)) > %systemroot%\ifconfig.cmd

А хочется чтоб одной командой можно было расставить абзацы и отформатировать код, это вообще возможно ?

Например если я так сделаю

Код:
echo  @echo ; IF "%1"=="-a" (ipconfig /all) ELSE (@IF "%1"=="-?" (ipconfig /?) ELSE (ipconfig %1 %2)) > %systemroot%\ifconfig.cmd

сценарий не запуститься.

а если вручную создать вот так

CMD/BATCH:
@echo off
IF "%1"=="-a" (ipconfig /all)
  ELSE (@IF "%1"=="-?"
(ipconfig /?)
   ELSE (ipconfig %1 %2)
)

тогда работает.
 

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
6,612
Реакции
6,051
Баллы
808
Можно. Есть несколько способов.

Вариант 1. Через консоль копированием данных с устройства con (клавиатура)
  • Запуск консоли.
  • Пишем команду:
Код:
copy con ifconfig.cmd
  • Пишем содержимое нашего бат-файла. Ввод каждой строки подтверждаем клавишей {ENTER}.
  • Нажимаем Ctrl + Z, затем клавишу Enter.
Вариант 2. Через консоль, используя команду more (способ от MihaniX)
  • Запуск консоли.
  • Пишем команду:
Код:
more > ifconfig.cmd
  • Пишем содержимое нашего бат-файла. Ввод каждой строки подтверждаем клавишей {ENTER}.
  • Завершение ввода нажимаем Ctrl + C (либо Ctrl + Z и клавишу Enter) на новой строке.

p.s. Вместо %1 %2 лучше использовать %*
 
  • Like
Реакции: akok
Сверху Снизу