/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
IP til HEX
Fra : Carsten


Dato : 20-02-06 15:29

Hej

Jeg har lavet et lille script der kan hente IP adressen. Kan det lade
sig gøre at konvertere den til HEX med normale script kommandoer.
(1.1.1.16 >> 01010110)
(Jeg har brug for at lave et fil navn på max. 8 tegn)

Mvh
Carsten

---------
#!/bin/bash
ifconfig >ip.txt
IPFILE=./ip.txt
IPADD=`grep -m1 "inet addr:" $IPFILE | cut -d ":" -f2 | cut -d " " -f1`
rm ./ip.txt
echo $IPADD >m
----------

 
 
Mogens Kjaer (20-02-2006)
Kommentar
Fra : Mogens Kjaer


Dato : 20-02-06 15:55

Carsten wrote:
> Hej
>
> Jeg har lavet et lille script der kan hente IP adressen. Kan det lade
> sig gøre at konvertere den til HEX med normale script kommandoer.
> (1.1.1.16 >> 01010110)
> (Jeg har brug for at lave et fil navn på max. 8 tegn)

Det kan nok gøres smartere:


#!/bin/bash
IPADD1=`ifconfig|grep -m1 "inet addr:" $IPFILE | cut -d ":" -f2 | cut -d
" " -f1|cut -d "." -f1`
IPADD2=`ifconfig|grep -m1 "inet addr:" $IPFILE | cut -d ":" -f2 | cut -d
" " -f1|cut -d "." -f2`
IPADD3=`ifconfig|grep -m1 "inet addr:" $IPFILE | cut -d ":" -f2 | cut -d
" " -f1|cut -d "." -f3`
IPADD4=`ifconfig|grep -m1 "inet addr:" $IPFILE | cut -d ":" -f2 | cut -d
" " -f1|cut -d "." -f4`
printf "%2.2x%2.2x%2.2x%2.2x" $IPADD1 $IPADD2 $IPADD3 $IPADD4 >m


--
Mogens Kjaer, Carlsberg A/S, Computer Department
Gamle Carlsberg Vej 10, DK-2500 Valby, Denmark
Phone: +45 33 27 53 25, Fax: +45 33 27 47 08
Email: mk@crc.dk Homepage: http://www.crc.dk

Mogens Kjaer (20-02-2006)
Kommentar
Fra : Mogens Kjaer


Dato : 20-02-06 16:03

Mogens Kjaer wrote:
....
> Det kan nok gøres smartere:
>
>
> #!/bin/bash
> IPADD1=`ifconfig|grep -m1 "inet addr:" $IPFILE | cut -d ":" -f2 | cut -d
> " " -f1|cut -d "." -f1`

Tja, $IPFILE skal ikke være der.

Mogens


--
Mogens Kjaer, Carlsberg A/S, Computer Department
Gamle Carlsberg Vej 10, DK-2500 Valby, Denmark
Phone: +45 33 27 53 25, Fax: +45 33 27 47 08
Email: mk@crc.dk Homepage: http://www.crc.dk

Ukendt (20-02-2006)
Kommentar
Fra : Ukendt


Dato : 20-02-06 16:28

Mogens Kjaer wrote:
>
> Carsten wrote:
> > Hej
> >
> > Jeg har lavet et lille script der kan hente IP adressen. Kan det lade
> > sig gøre at konvertere den til HEX med normale script kommandoer.
> > (1.1.1.16 >> 01010110)
> > (Jeg har brug for at lave et fil navn på max. 8 tegn)
>
> Det kan nok gøres smartere:

Måske sådan her

printf "%2.2x%2.2x%2.2x%2.2x\n" $(ifconfig eth0|
grep -m1 "inet addr:"|cut -f2 -d:|cut -f1 -d" "|tr . ' ')

--
Kasper Dupont -- Rigtige mænd skriver deres egne backupprogrammer
#define _(_)"d.%.4s%."_"2s" /* This is my new email address */
char*_="@2kaspner"_()"%03"_("4s%.")"t\n";printf(_+11,_+6,_,6,_+2,_+7,_+6);

Klaus Ellegaard (20-02-2006)
Kommentar
Fra : Klaus Ellegaard


Dato : 20-02-06 16:35

Kasper Dupont <85776324739867490139@expires.03.apr.2006.kasperd.net.invalid> writes:

>printf "%2.2x%2.2x%2.2x%2.2x\n" $(ifconfig eth0|

d'oh... ja, printf ville nok være nemmere her

Oh well, min kan i det mindste regne med vilkårlig base

Mvh.
   Klaus.

Klaus Ellegaard (20-02-2006)
Kommentar
Fra : Klaus Ellegaard


Dato : 20-02-06 16:30

Carsten <mail@no-mail.dk> writes:

>Jeg har lavet et lille script der kan hente IP adressen. Kan det lade
>sig gøre at konvertere den til HEX med normale script kommandoer.

Jada. Den er vist ikke så pæn, men den virker

/sbin/ifconfig eth0 |
   grep inet |
   sed -e 's/.*inet addr:/16o/' -e 's/ .*/p/' -e 's/[\. ]/p/g' |
   dc |
   sed -e 's/^.$/0&/' |
   tr -d '\n'

Den er desværre lidt Linux-specifik. Ikke fordi der er noget galt
med kommandoerne, men fordi outputtet af ifconfig er forskelligt
fra platform til platform.

Den tilsvarende til Solaris:

/usr/sbin/ifconfig ce0 |
   grep inet |
   sed -e 's/.*inet /16o/' -e 's/netmask.*//' -e 's/[\. ]/p/g' |
   dc |
   sed -e 's/^.$/0&/' |
   tr -d '\n'

Bemærk at jeg bruger dc-kommandoen. Den er en del af alle de
Unix-standard-installationer, jeg kender... men af en eller
anden grund er den ikke med som udgangspunkt i alle Linux-
distributioner. Så må man jo lige installere.

Meneh... det er måske dér, hvor perl er en smart ting... for
ovenstående er jo ikke ligefrem læsbart.

Mvh.
   Klaus.

Peter Jensen (20-02-2006)
Kommentar
Fra : Peter Jensen


Dato : 20-02-06 17:05

Carsten wrote:

> Jeg har lavet et lille script der kan hente IP adressen. Kan det lade
> sig gøre at konvertere den til HEX med normale script kommandoer.
> (1.1.1.16 >> 01010110)

for i in `echo 1.1.1.16 | tr . ' '`; do printf "%02X" $i; done

--
PeKaJe

If people see that you mean them no harm, they'll never hurt you, nine
times out of ten!

Carsten (21-02-2006)
Kommentar
Fra : Carsten


Dato : 21-02-06 10:35

Tak for alle de gode forslag. De hjalp.

Mvh

Carsten

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408526
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste