Below I try to control that the input is good an IP :
Code:
#!/bin/bash
cp /home/scripts/choice_interfaces.txt /home/scripts/interfaces.txt
chmod 644 /home/scripts/interfaces.txt
echo -e "Please enter the network informations into the /etc/network/interfaces file, complete them below :\n"
sed -n '1,10p' choice_interfaces.txt
printf "address " ; read -r address
if [[ $address =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
printf "network " ; read -r network
printf "netmask " ; read -r netmask
printf "broadcast " ; read -r broadcast
printf "gateway " ; read -r gateway
else
echo "$address doesn't correct"
fi
sed -i '12s/$/\n address '$address'/' interfaces.txt
sed -i '13s/$/\n network '$network'/' interfaces.txt
sed -i '14s/$/\n netmask '$netmask'/' interfaces.txt
sed -i '15s/$/\n broadcast '$broadcast'/' interfaces.txt
sed -i '16s/$/\n gateway '$gateway'/' interfaces.txt
mv /home/scripts/interfaces.txt /etc/network/interfaces
I try a loop.. :
Code:
printf "address " ; read -r address
while [[ $address =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; do
printf "address " ; read -r address
done
I wanted that the user be invited to type until his input is good
printf "network " ; read -r network
printf "netmask " ; read -r netmask
printf "broadcast " ; read -r broadcast
printf "gateway " ; read -r gateway
I do an example that I will wish, because I row.. :
Code:
#!/bin/bash
cp /home/scripts/choice_interfaces.txt /home/scripts/interfaces.txt
chmod 644 /home/scripts/interfaces.txt
echo -e "Please enter the network informations into the /etc/network/interfaces file, complete them below :\n"
sed -n '1,10p' choice_interfaces.txt
while[[ $address $network $netmask $broadcast $gateway =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]] || [[-z $address $network $netmask $broadcast $gateway]]; do (I found it on google to test if the input is empty but Its not working)
printf "address " ; read -r address
printf "network " ; read -r network
printf "netmask " ; read -r netmask
printf "broadcast " ; read -r broadcast
printf "gateway " ; read -r gateway
done
sed -i '12s/$/\n address '$address'/' interfaces.txt
sed -i '13s/$/\n network '$network'/' interfaces.txt
sed -i '14s/$/\n netmask '$netmask'/' interfaces.txt
sed -i '15s/$/\n broadcast '$broadcast'/' interfaces.txt
sed -i '16s/$/\n gateway '$gateway'/' interfaces.txt
#mv /home/scripts/interfaces.txt /etc/network/interfaces1
Wow I'm so zoned out I don't even know if I posted this question up already (I couldn't find it in my book marks or in "yesterday's" post).
My question is, I'm writing a korn script that does something like the following, but I don't yet completely understand the syntax. I need to check that... (16 Replies)
Surely there's an easier way to do this, lets see if anyone knows! I am new to scripting so go easy on me!
I have the following script and at the moment it doesn't work and I believe the problem is that I am using a while loop within a while loop. When I run the script using sh -x I can see... (6 Replies)
Hi,
root@server] df -h
121G 14G 101G 12% /home
147G 126G 14G 91% /backup
We having our site files and images are storing in
/backup/home/user/files/ through symbolic link created in /home directory pointing in /backup directory as following.
root@server] cd /home... (1 Reply)
Hi, I hope the title does not scare people to look into this thread but it describes roughly what I'm trying to do. I need a solution in PHP.
I'm a programming beginner, so it might be that the approach to solve this, might be easier to solve with an other approach of someone else, so if you... (0 Replies)
Hi experts,
I just want to know if there is a better solution to my nested while read loops below:
while read line; do
while read line2; do
while read line3; do
echo "$line $line2 $line3"
done < file3.txt
done < file2.txt
done < file1.txt >... (4 Replies)
hello
i'm writing a script and I want to use a for loop inside a while loop as following:
while read line;
do
echo $line
for i in $vrm;
do
echo $i
done
done < './contacts'
when i use just the while loop it prints the lines from file ./contacts just... (13 Replies)
Firstly, I would like to apologize if this is not the appropriate sub-forum to post about GNU/BSD makefile scripting. Though my code is in C++, because I am focusing on the makefile I thought it would go better in shell scripting. Please correct me if I am wrong.
Secondly, I am not interested in... (0 Replies)
Hi.
How can I create a history function? (By "read" command or so)
&
How can I configure a read command so that the arrow keys are not displayed so funny? (^[[A)
Thanks in advance. (4 Replies)
I am using this code:
for e in {1..14}
do
awk '{gsub(/^.*GGGGGG|TTTTT.*$/,"",$0)} 1' $e.1 > ${e}.2
done
However, in the second loop instead of GGGGGG|TTTTT, I should use AAAAAA|CCCCCC.
For third loop CCAAAA|CCCCAA, so on and so forth. Is there any way to accomplish this without writing... (20 Replies)
Discussion started by: Xterra
20 Replies
LEARN ABOUT CENTOS
bashbug
BASHBUG(1) General Commands Manual BASHBUG(1)NAME
bashbug - report a bug in bash
SYNOPSIS
bashbug [--version] [--help] [email-address]
DESCRIPTION
bashbug is a shell script to help the user compose and mail bug reports concerning bash in a standard format. bashbug invokes the editor
specified by the environment variable EDITOR on a temporary copy of the bug report format outline. The user must fill in the appropriate
fields and exit the editor. bashbug then mails the completed report to bug-bash@gnu.org, or email-address. If the report cannot be
mailed, it is saved in the file dead.bashbug in the invoking user's home directory.
The bug report format outline consists of several sections. The first section provides information about the machine, operating system,
the bash version, and the compilation environment. The second section should be filled in with a description of the bug. The third sec-
tion should be a description of how to reproduce the bug. The optional fourth section is for a proposed fix. Fixes are encouraged.
ENVIRONMENT
bashbug will utilize the following environment variables if they exist:
EDITOR Specifies the preferred editor. If EDITOR is not set, bashbug defaults to emacs.
HOME Directory in which the failed bug report is saved if the mail fails.
TMPDIR Directory in which to create temporary files and directories.
SEE ALSO bash(1)AUTHORS
Brian Fox, Free Software Foundation
bfox@gnu.org
Chet Ramey, Case Western Reserve University
chet@po.cwru.edu
GNU Bash-4.0 1998 July 30 BASHBUG(1)