PDA

Показать полную графическую версию : bash scripting


Flick
20-04-2007, 10:32
Здравствуйте подскажите пожалуйста - у меня следующий вопрос
как мне передать выполняемой программе из скрипта несколько параметров например несколько нажатий пробелов или слов?
более подробно - выполняется установка j2sdk из фалика .bin и во время разархивирования выдает лиц соглашение которое надо пролистать так вот как можно это осуществить без участия пользователя ?

Заранее Спасибо!

ruslandh
20-04-2007, 10:49
как можно это осуществить без участия пользователя

1 А у этого bin ключей типа --licency-off --rpm и т.п. нет ? (--help)
2 посмотрел спек в RPM - там :
MORE=10000 sh %jdksource <<EOF
yes
EOF

Flick
20-04-2007, 13:59
Вот не работает он с ключиками пробовал и --help и --licensy-off и потом это не рпм пакет или, нет разницы ? последние три строки не понял абсолютно если не секрет они откуда?

ruslandh
20-04-2007, 23:03
Насчёт rpm пакета :)
Теория
Для построения его используются файлы spec, в которых можно прописывать комады bash (не только, можно и python и perl и т.п.) - получается определённым образом организованный скрипт, целью которого является сборка программы в заданном каталоге.

Практика

В данном случае - %jdksource - это макрос, задающий имя файла .bin, остальное скрипт bash, т.е. из spec файла можно получить рецепт скрипта, например :


#!/bin/bash

jdksource=jdk-1_5_0-11-linux-amd64.bin

MORE=10000 sh %jdksource <<EOF
yes
EOF

Uncle_Theodore
22-05-2007, 09:16
Здравствуйте подскажите пожалуйста - у меня следующий вопрос
как мне передать выполняемой программе из скрипта несколько параметров например несколько нажатий пробелов или слов?
более подробно - выполняется установка j2sdk из фалика .bin и во время разархивирования выдает лиц соглашение которое надо пролистать так вот как можно это осуществить без участия пользователя ?

Есть такая команда
yes
спеуиально для таких случаев.
man yes расскажет, как ей пользоваться. :)
Примерно так
yes | <скрипт, задающий вопросы>

Flick
06-06-2007, 18:37
Спасибо!




© OSzone.net 2001-2012