powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Передача параметра в файл
17 сообщений из 17, страница 1 из 1
Передача параметра в файл
    #34324323
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет
Стоит такая задача нужно после /до {без понятия когда- как напишу так и будет} запускного файла выдать сообщение с запросом на режим работы запускаемого файла, к примеру :"выбирите режим работы :1,2, 3", после чего следует ввод с клавиатуры 1,2 или 3. Далее как обычно выполняется этот файл, но в соответсвующем режиме
Работаю с консолью , больших заморочек с графическим интрефейсом не надо. просто текстовое сообщение = запрос->ввод -> передача полченного значения в параметр файла, и отроботка файла
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34324382
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
#!/bin/sh

read -p "выберите режим работы 1,2, 3: " a
case $a in
 1 ) ---режим 1
;;
 2 ) ---режим 2
;;
 3 ) ---режим 3
;;
*) echo "error" ; exit
esac
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34325235
JeweL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
если нужно много раз выполнять команду с разным параметром
Код: plaintext
1.
2.
3.
select i in  1   2   3   4 ; do
echo $i
[ $i -eq  4  ] && break
done
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34326017
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а по подробнее можно, по поводу первого коментария
у меня просто возникли затруднения
1. Выбор режима вылазит после обработки моего файла , а надо "до"
2. Как в файл передать то значение которое ввели до его обработки с клавиатуры
К примеру в файле есть переменная default=... , что должно быть записано в файле чтобы она получила значение?
За ранее спасибо
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34326084
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
непонятно, что именно хотите сделать.
Что подразумевается под "обработкой файла" ?

"Как в файл передать то значение которое ввели до его обработки с клавиатуры" - это зависит от того, что за файл. Это запускаемая программа? Бинарник или скрипт? Онипринимает параметры или читает стандартный ввод?

в общем, напишите поподробнее, что именно делается.
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34326132
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заранее спасибо за такие скорые ответы, прям как в аське общаемя :)
Подробнее..
есть один файл который обрабатывает второй и результат записывает в третий
Запускная строка:
java -jar saxon8.jar -t 1.sch 2.xsl> temp.html -допустим
Так вот в файле 2.xsl есть переменная допустим "а", в нее должно быть записано значение, 1,2 или 3.
Жесткое прописание этого значения не подходит (то есть подходит, но токо на этапе тестирования), поэтому надо это значение выбрать перед запуском запуском обработки, и введенное значение присвоить этой переменной в файле
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34326146
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Файлы не запускные, имеют текстовую структуру
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34326202
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда понятно.
надо просто прогонять файл через фильтр, который сделает замену (sed, awk, perl etc)

фильтр < 2.xsl > 2_tmp.xsl
java -jar saxon8.jar -t 1.sch 2_tmp.xsl> temp.html
rm 2_tmp.xsl


это можно ваставить в пример с case, в зависимости от выбора будет выполняться код с тем или иным фильтром.
а какой должен быть фильтр - тут надо тсодержимое файла смотреть
и написать фильтр, чтобы он заменил именно то что надо (вот как раз ту переменную)
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34326262
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну к примеру внутри записано
В вверху где то записано a=.. - то значение которое ввели с клавиатуры, должно стоять вместо ".."
Ниже условие плана:
<if test="a=3 "> Делаем это</if>
Структура запускного файла будет выглядеть так?

#!/bin/sh

read -p "выберите режим работы 1,2, 3: " a
case $a in
1) фильтр < 2.xsl > 2_tmp.xsl
java -jar saxon8.jar -t 1.sch 2_tmp.xsl> temp.html
rm 2_tmp.xsl ;;
2) фильтр < 2.xsl > 2_tmp.xsl
java -jar saxon8.jar -t 1.sch 2_tmp.xsl> temp.html
rm 2_tmp.xsl ;;
3) фильтр < 2.xsl > 2_tmp.xsl
java -jar saxon8.jar -t 1.sch 2_tmp.xsl> temp.html
rm 2_tmp.xsl ;;
*) echo "error" ; exit
esac

А как или где идет присвоение значения переменной?
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34326323
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так в фильтре дело

можно вообще проще , тут выбор в принципе и не нужен исходя из задачи

Код: plaintext
1.
2.
3.
4.
5.
#!/bin/sh
read -p "выберите режим работы 1,2, 3: " a
sed -e "s/a=./a=$a/" <  2 .xsl > 2_tmp.xsl
java -jar saxon8.jar -t  1 .sch 2_tmp.xsl> temp.html
rm 2_tmp.xsl

только надо протестировать что он файл больше не портит
(если где-то встречается a=что-то-там то он заменит первое вхождение)
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34326425
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все получилось, спасибо за помощь
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34331673
Фотография Ося
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SuSaВсе получилось, спасибо за помощь

ключами надо передавать. а не через read, к тому же read без цикла -- до первого code review
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34350231
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если так
java -jar saxon8.jar -t 1.sch 2.xsl phase=1> temp.html
Это запускная строка, phase=1 - параметр и переданное ему значение,
вот сюда бы выбор значения... :), чтоб не '1' а чего введешь
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34350556
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
точно так же, через переменную
про ключи - происоединяюсь.
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34351350
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, че за ключи , хоть бы пример показали
> точно так же, через переменную
как это? ну чего трудно написать чтоли?
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34351418
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
че-нибудь такое

option=$1
java -jar saxon8.jar -t 1.sch 2.xsl phase=$option > temp.html
...
Рейтинг: 0 / 0
Передача параметра в файл
    #34351500
Фотография Ося
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SuSaБлин, че за ключи , хоть бы пример показали
> точно так же, через переменную
как это? ну чего трудно написать чтоли?


неужели это так раздражает?
смотрите какой чудесный ман
в кратце, вам нужен цикл по $1, shift и case
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Передача параметра в файл
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]