LINUX.ORG.RU

Интерактивное меню bash

 ,


0

2

есть такой вот скрипт:

#!/bin/bash

aptitude -y install tftpd-hpa isc-dhcp-server nfs-kernel-server

echo > /etc/default/tftpd-hpa 'TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:xx"
TFTP_OPTIONS="--secure"'

/etc/init.d/tftpd-hpa restart

echo > /etc/dhcp/dhcpd.conf 'option domain-name-servers 8.8.8.8, 8.8.4.4;
option ip-forwarding on;
default-lease-time 60;
min-lease-time 120;
max-lease-time 300;
authoritative;
ddns-update-style interim;
log-facility local7;
shared-network PXE-network {
  subnet 172.16.0.0  netmask 255.255.240.0 {
  range 172.16.0.10 172.16.1.100;
  option routers 172.16.2.48;
  option subnet-mask 255.255.240.0;
  option domain-name-servers 8.8.8.8, 8.8.4.4;
  filename "pxelinux.0";
  next-server 172.xx.x.xx;
  option root-path "172.16.2.48:/srv/tftp/";
  }
}'

service isc-dhcp-server restart

/etc/init.d/nfs-kernel-server restart
помогите пожалуйста прикрутить к нему меню для ввода таких данных как ip, маска и тд

echo "Введи IP"
read ip
echo "IP = $ip"

И так далее.

alozovskoy ★★★★★ ()

примерно так

tmp=$(mktemp)
cat >$tmp <<EOF
IP=
MASK=
TD=
EOF
vim $tmp
eval "$(sed -re \"s/=/='/\" -e \"s/$/'/\" -e \"/^[A-Z]+='[^']*'$/ ! d\" $tmp)"
DonkeyHot ★★★★★ ()
Последнее исправление: DonkeyHot (всего исправлений: 1)

man read. Ключик -p в частности

Deleted ()

в баше есть встроенный функционал для интерактивного меню. man bash

most-fucktum ()

А может удобнее передать параметрами будет? scipt.sh ip netmask dns1 dns2 А в скрипте это обрабатывать $1 $2 $3 где цифра - номер параметра. Хоть и надо будет помнить, что сначала вводить, зато с переменными будет проще.

PunkoIvan ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.