[bglug] script in bash per gestire il router

Baccanelli Massimo massix@sorint.it
Sab 14 Feb 2004 01:16:38 CET


Ciao a todos,

L'EOF, End of File, e' un carattere di controllo che comunica,
ai comandi unix, la conclusione di una serie di immisioni dati.


L'esempio che segue dovrebbe darVi un idea piu' chiara:

	[(-1%) massix@monster tmp]$ cat auto_telnet.sh
	#!/bin/bash
	# +------------------------------------------+
	host="blade03"
	user="root"
	pass="root"
	# +------------------------------------------+
	#!/bin/bash
	tpipe() {
	sleep 1 ; echo $user
	sleep 1 ; echo $pass
	sleep 1 ; echo 'who'
	sleep 1 ; echo 'uname -a'
	sleep 1 ; echo 'exit'
	sleep 1
	}
	tpipe | telnet $host 2>/dev/null
	[(-1%) massix@monster tmp]$

	[(-1%) massix@monster tmp]$ ./auto_telnet.sh
	Trying 172.16.1.53...
	Connected to blade03.
	Escape character is '^]'.


	SunOS 5.8

	login: root
	Password:
	Last login: Sat Feb 14 00:48:25 from 10.0.20.88
	Sun Microsystems Inc.   SunOS 5.8  Generic Patch   December 2002
	Sourcing //.profile-EIS.....
	root@blade03 # who
	root       pts/1        Feb 14 00:41    (10.0.20.88)
	root       pts/2        Feb 14 01:00    (10.0.20.88)
	root@blade03 # uname -a
	SunOS blade03 5.8 Generic_108528-27 sun4u sparc \
         SUNW,Sun-Blade-100
	root@blade03 # exit
	[(-1%) massix@monster tmp]$

Tanto per stare in tema, dio salvi la regina, un ulteriore esempio
su come l'applicazione dell'EOF possa' tornare utile:

	[(-1%) massix@monster tmp]$ cat auto_ftp.sh
	#!/bin/bash
	# +------------------------------------------+
	host="blade03"
	user="root"
	pass="root"
	# +------------------------------------------+
	ftp -n << EOF
	open $host
	user $user $pass
	hash
	bin
	cd /tmp
	lcd /home/massix/TempoLibero/Mp3/Posse
	put 99_Posse_-_Preghiera.mp3
	cd /etc
	lcd /tmp
	get hosts
	bye
	EOF
	[(-1%) massix@monster tmp]$

	[(-1%) massix@monster tmp]$ ./auto_ftp.sh
	Hash mark printing on (1024 bytes/hash mark).
	Local directory now /data/Common/TempoLibero/Mp3/Posse
	######################################################
	######################################################
	####
	Local directory now /tmp
	#
	[(-1%) massix@monster tmp]$

Spero d'essere stato d'aiuto.
Salut
MaX

Riccardo Mottola wrote:
> on 2/10/04 10:25 PM, grazia at grazia.toffetti@tin.it wrote:
> 
> 
>>Ciao,
>>mi spieghi l'utilizzo di EOF (endOfFile) ?
>>Non e' un vero file e l'input l'ho sempre visto passare cosi <, non
>>cosi' <<.
>>
>>Non capisco...:-)
> 
> 
> se la mia memoria non mi tradisce, > e >> si differenziano in genere che uno
> fa il pipe dell'output sovrascrivendo oil vecchio file, l'altro invece ne fa
> l'append.
> E usi EOF per simulare la fine del file.
> 
> In questo caso non ti saprei dire berche' sia stato usato <<... forse il
> creatore dello script si e' lasciato contaminare un po' dal C++ ?
> 
> -Ric
> 
> 
> 
> ------------------------------------------------------------------------
> 
>  



Maggiori informazioni sulla lista bglug