Sponsored Content
Top Forums Shell Programming and Scripting Validate an IP address - Return to menu Post 302377407 by Scrutinizer on Friday 4th of December 2009 02:56:30 AM
Old 12-04-2009
OK I brushed it up a little bit so that is handles ".1.1.1" :
Code:
#!/bin/sh
set -x
oldIFS=$IFS
while : ; do
  IFS=$oldIFS
  echo "Enter IP address"
  read quad

  IFS=.
  set -- $quad

  if [ $# -ne 4 ]; then
    echo "Must have 4 parts"
    continue
  fi

  for oct in $1 $2 $3 $4; do
    echo $oct | egrep "^[0-9]+$" >/dev/null 2>&1
    if [ "$?" -ne "0" ]; then
       echo "$oct: Not numeric"
       continue 2
    else
       if [ "$oct" -lt "0" -o "$oct" -gt "255" ]; then
          echo "$oct: Out of range"
          continue 2
       fi
    fi
  done

  echo "$quad" | grep "\.$" >/dev/null 2>&1
  if [ "$?" -eq "0" ]; then
    echo "Trailing period - invalid"
    continue
  fi

  if [ -n $1 ] || [ $1 -eq 0 ]
  then
    echo "First octet must not be zero (0)..."
    continue
  fi

  # if we're here, we're validated
  echo "$quad validates OK!"
  exit 0
done

Not my cup of tea though. Check CFA Johnson's solution:

Last edited by Scrutinizer; 12-04-2009 at 04:02 AM..
 

10 More Discussions You Might Find Interesting

1. IP Networking

pine username return address

hello all I am happily using pine but unhappily sending email as username@where.my.mail.works instead of ****@my.college.edu well, my username on my computer is one thing, but my username on my college account (**** here) is different. what I'm trying to do is use the college server for... (1 Reply)
Discussion started by: plusran
1 Replies

2. Programming

Return IP address

Not sure whether this is an appropriate request, however, Using C++ code I'm running a unix command from the pc that needs the IP address of the PC in order to set the DISPLAY variable. The code is written using Builder C++ (Borland) but I'm having difficulty finding what functions / header... (3 Replies)
Discussion started by: gefa
3 Replies

3. UNIX for Dummies Questions & Answers

return IP address

Hi, If my IP address is 192.29.0.131 I want output _0_131 # /sbin/ifconfig | grep "inet addr" | grep 192 | cut -d "." -f3 0 I have tried the above and I get third digit. I want forth digit as well separated by underscore. Or is there any better approach? (4 Replies)
Discussion started by: shantanuo
4 Replies

4. Shell Programming and Scripting

Read Hostname and Return IP Address

Dear Experts, I have a text file on my itanium box which contains list of nearly 1000 hostnames. I do not have the IP Address of them. I want read each entry from the text file and want to do a nslookup to the DNS Server and get the IP Adresses and put them in another file in the format... (1 Reply)
Discussion started by: PrasannaKS
1 Replies

5. Shell Programming and Scripting

How to validate an IP address

hi I need a simple script to do the following. I need to check the user input for 1. quad dotted notation. 2. check that all of the inputs are numeric and within 1-255 range. Could someone please help me? I tried to use egrep to check for dotted notation. quad=1.1.1.12 ... (5 Replies)
Discussion started by: sabina
5 Replies

6. Shell Programming and Scripting

Scripting problem - when the file is not found i want it to return to the menu

when the file is not found i want it to return to the menu, however it carries out the next line when i hit a key I know its probably something simple can anyone help? here is my pause function: function pause(){ read -s -n 1 -p "Press any key to return to Menu . . ." echo } SCRIPT... (2 Replies)
Discussion started by: Alendrin
2 Replies

7. Programming

validate IPV6 address in windows using c++

I know there is a function inet_tpon for unix platforms to validate ipv6 addresses.But i need an equivalent of windows.When i use this function with the header file <winsock2.h> the visual studio 2005 on win2003 issues an error saying identifier not found :confused: (3 Replies)
Discussion started by: guru13
3 Replies

8. Shell Programming and Scripting

Need to get return code from mutt if an address is invalid/undeliverable from Unix shell script

I am using mutt on ksh Unix to send emails to addresses plucked from the database. If the "To:" email address is not longer valid and so the email is not sent to the "To:" recipient, but is sent to the valid cc address, I need to be able to get an error code returned to the shell script so that... (3 Replies)
Discussion started by: jzuber
3 Replies

9. IP Networking

Set default return address for all mails sent from mailx

Hi, I have a question about mailx in Red Hat: If I use 'mail userid@mydomain.com -- -f root@mydomain.com', the return mail address will be root@mydomain.com. How can I make all mails sent from this system use root@mydomain.com as return address by default? Thank you in advance! nz (1 Reply)
Discussion started by: aixlover
1 Replies

10. UNIX for Beginners Questions & Answers

Gnome 3.28.3 menu item dissapears under the system menu

I installed CentOS 8 with Gnome 3.28.2 and I noticed that the "switch user" menu item disappeared from under the system menu of Gnome classic (Both X11 & Wayland). I checked google and this problem seems to have a history going back several releases of Gnome. Unfortunately, I never found a... (1 Reply)
Discussion started by: bodisha
1 Replies
DH_INSTALLMENU(1)						     Debhelper							 DH_INSTALLMENU(1)

NAME
dh_installmenu - install Debian menu files into package build directories SYNOPSIS
dh_installmenu [debhelperoptions] [-n] DESCRIPTION
dh_installmenu is a debhelper program that is responsible for installing files used by the Debian menu package into package build directories. It also automatically generates the postinst and postrm commands needed to interface with the Debian menu package. These commands are inserted into the maintainer scripts by dh_installdeb(1). FILES
debian/package.menu Debian menu files, installed into usr/share/menu/package in the package build directory. See menufile(5) for its format. debian/package.menu-method Debian menu method files, installed into etc/menu-methods/package in the package build directory. OPTIONS
-n, --noscripts Do not modify postinst/postrm scripts. SEE ALSO
debhelper(7) update-menus(1) menufile(5) This program is a part of debhelper. AUTHOR
Joey Hess <joeyh@debian.org> 9.20120909 2011-09-12 DH_INSTALLMENU(1)
All times are GMT -4. The time now is 11:01 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy