Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

script di bash insito in un bat di cmd

0 views
Skip to first unread message

Roberto Montaruli

unread,
Dec 16, 2009, 10:26:42 AM12/16/09
to
Se qualcuno fosse interessato alla cosa, descrivo una interessante
soluzione per avere uno script di bash all'interno di un batch di cmd,
in modo da mandare in esecuzione un unico file.

L'idea mi e' venuta partendo dall'opzione -x del perl che esegue un
file a partire da
#!/usr/bin/perl
fino a
__END__
e che permette in questo modo di poter inserire del codice perl dentro
un file.bat

Sfruttando l'idea ho realizzato questo meccanismo:

===
@ECHO OFF
REM questa parte viene interpretata dal cmd

REM la riga seguente produce il meccanismo
sed -n '/^#\__BEGIN__$/,/^#\__END__$/p' %0 | bash -s %*
goto EOF

GOTO :EOF
#__BEGIN__

# questa parte viene interpretata dal bash

#__END__

:EOF
===

Naturalmente occorre avere installato il cygwin sul sistema.
Il risultato e' che c'e' un solo file PIPPO.BAT che contiene al suo
interno del codice di shell script.

0 new messages