С Новым годом! Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/187: Рейтинг темы: голосов - 187, средняя оценка - 4.79
sergyar
1

Переменная в строке ввода (SET /P) для редактирования уже существующих данных

09.11.2010, 06:04. Показов 39248. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Стоит задача такого плана.
Нужно при запросе данных не вводить постоянно имена и другие данные, а редактировать уже существующие прямо в строке ввода. Это нужно для простоты, т.к имена файлов и ip меняются не значительно только последние цифры и буквы. До этого редактировал переменные в блокноте, но это неудобно.
set /P="Введите имя файла:"
set /P="Введите iptftp сервера:"
......
т.е должно вывести запрос:
Введите или отредактируйте имя файла: servergod-00-23-44
Введите или отредактируйте iptftp файла: 10.140.25.11
.....
После двоеточия должна быть возможность отредактировать имя.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.11.2010, 06:04
Ответы с готовыми решениями:

Создание форм для ввода и редактирования данных
Помогите, не как не могу разобраться стоит 2016 офис не могу никак разобраться, как сделать ...

Интерфейс для ввода/редактирования/просмотра данных в базе
Доброе время суток, форумчане. Ищу какое-нибудь готовое решение для создания интерфейса работы с БД...

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

Разработать функцию для ввода и редактирования данных с помощью пользовательской формы
Задав тип данных (директива Type) разработать функцию для ввода и редактирования данных с помощью...

9
195 / 34 / 3
Регистрация: 12.05.2010
Сообщений: 361
11.11.2010, 23:42 2
Чтобы не создовать похожую тему спрашиваю у выликих наших програмистов
как сделать типа
set /p server=[(это коментарий)^=^>](тут уже введённый текст НО который можно изменить)
set /p server=^=^>servergod-00-23-44
и вот чтобы после знака > можно было отредактировать значение переменной

я знаю что с русским у мя худо и если не поняли что тут я написал , я постараюсь как можно подробней
0
⁞ ★☭ Mad Max ☭★ ⁞
279 / 84 / 12
Регистрация: 04.09.2013
Сообщений: 187
03.02.2016, 14:02 3
Подниму тему.
Можно (нужно) с использованием jscript.
Есть утилитка by Bill Stewart (bstewart@iname.com) - EditVar/EditV32/EditV64,
она это делает, но хотелось бы иметь возможность встроенными средствами Windows.
Заранее спасибо.
0
4336 / 2126 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
03.02.2016, 19:08 4
Средствами W... выше:
Windows Batch file
1
2
3
4
5
@echo off
set "v=Будем менять: "
set /p "v=%v%"
echo.%v%
pause>nul
- никак, а не средствами ...s:
Windows Batch file
1
2
3
4
5
6
nircmd win hide title "%ComSpec%"
@echo off
for /f "delims=" %%a in ('"winput "Сообщение" "$input" "Введите или отредактируйте имя файла:" "servergod-00-23-44" /bg=#000080 /fc=#00FF00 /screen /oem"') do set "v=%%~a"
if not defined v exit
rem:>"%v%.txt"
exit
но, как и понятно, надо что-то качать, что-то устанавливать:
utilits.7z.
0
⁞ ★☭ Mad Max ☭★ ⁞
279 / 84 / 12
Регистрация: 04.09.2013
Сообщений: 187
04.02.2016, 01:15 5
alpap,
C EditVar намного проще
Windows Batch file
1
editv32 -p "Enter your user name: " NAME
Кликните здесь для просмотра всего текста
Usage:

EditVar [-b] [-e] [-l len] [-m] [-n] [-o] [-p prompt] [-t n] [-u] var

Arguments:

-b Place the cursor at the beginning of the input line (instead of the
end).

-e Do not insert shell escape characters before reserved shell
characters in the environment variable's contents. (Windows x86/x64
only)

-l len Limits input to 'len' characters. In MS-DOS, the limit is 255
characters; In Windows x86/x64, the limit is 2047 characters.

-m Masked input: Displays '*' for typed characters.

-n Restricts input to numbers only (0-9).

-o Starts the line editor in overtype mode instead of insert mode.

-p prompt Specifies a prompt for the user. If it contains spaces or tabs,
enclose it in quotes (").

-t n Assume Enter was pressed if nothing typed within 'n' seconds.

-u Forces entered characters to uppercase.

var The environment variable's name (required). This name can be up to
127 characters long. If the variable name contains spaces, enclose
it in quotes.

но, как я и написал,
Цитата Сообщение от @Root Посмотреть сообщение
хотелось бы иметь возможность встроенными средствами Windows
0
4336 / 2126 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
04.02.2016, 18:20 6
Цитата Сообщение от @Root Посмотреть сообщение
C EditVar намного проще
, то ли не сильно искал, но не нашел возможности редактировать, как в winput, поэтому от set /p не сильно отличается. Чтобы редактировать при использовании set /p, надо использовать вставку из буфера, чего уже нет в windows, и даже при этом это сразу будет концом строки и переводом на новую (нажатие enter), т.е. редактирование пролетает, поэтому первый код в п4, может хотя бы по enterу повторить умолчание, больше из него не вытянуть и даже никакие временные файлы ничего не дадут - это будет даже не костыль, извращение.
0
⁞ ★☭ Mad Max ☭★ ⁞
279 / 84 / 12
Регистрация: 04.09.2013
Сообщений: 187
04.02.2016, 18:58 7
Цитата Сообщение от alpap Посмотреть сообщение
от set /p не сильно отличается
очень плохо искал. Мало того, что редактировать, еще и хот-кей можно использовать, маску на ввод только чисел, перевод в верхний регистр... и много чего еще,
остальное мне и так известно, поэтому и поднял тему.
0
4336 / 2126 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
05.02.2016, 14:13 8
@Root, Очень жалкое подобие редактирования:
Windows Batch file
1
2
3
4
5
6
@echo off
set "v=file_2016-02-05"
set /p "sv=Отредактируйте имя (file_2016-02-xx): "
if defined sv call set "v=%%v:05=%sv%%%"
echo.%v%
pause>nul
.

Добавлено через 1 минуту
Все это варианты для ленивых
0
⁞ ★☭ Mad Max ☭★ ⁞
279 / 84 / 12
Регистрация: 04.09.2013
Сообщений: 187
05.02.2016, 14:51 9
ну да
0
4336 / 2126 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
09.02.2016, 11:53 10
По нажатию ENTER создается файл с именем по-умолчанию но разной (текущей) датой, т.е. каждый раз новый, а также еще есть возможность поменять имя (или что там будет вместо него), это не совсем по ТС, а по заголовку:
Windows Batch file
1
2
3
4
5
6
@echo off
set "file=%date%  %time:~0,-3%"
set "name=file"
set /p "name=Введите имя: "
rem:>"%name%_%file::=' %.txt"
exit
.
0
09.02.2016, 11:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.02.2016, 11:53
Помогаю со студенческими работами здесь

Явное преобразования для уже существующих классов - возможно ли
Привет всем. Знаю что можно написать для своих класов явное и даже не явное преобразования. Но меня...

Public переменная, или private переменная и функции get/set
Пишу свой класс, который потом будет много где использоваться и пытаюсь осознать, как правильнее и,...

Создание таблицы из уже существующих
Нужно создать таблицу(Студент-комната) которая будет содержать информацию из таблицы Студенты...

Как создать рекордсет из уже существующих?
Как создать рекордсет из уже существующихрекордсетов в VB? Например есть набор r1 и r2 надо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru