Schrift
[thread]841[/thread]

Unix-Shell-Kommando ausführen: Unix-Shell-Kommando ausführen

Leser: 1


<< >> 3 Einträge, 1 Seite
sde42dn
 2006-11-17 14:35
#8977 #8977
User since
2006-10-26
11 Artikel
BenutzerIn
[default_avatar]
Hallo zusammen,

ich versuche mit Perl unten stehendes Solaris-Kommando auszuführen:

metastat -p|grep "p "|awk '{print $3}'|sort|uniq

Code in Perl:

chomp (@Metasets=`metastat -p|grep "p "|awk '{print $3}'|sort|uniq` );

leider wird die awk-Anweisung in der zweiten Pipe nicht ausgeführt.

Kann mir hierbei jemand behilflich sein?

Danke

Grüsse Peter
renee
 2006-11-17 14:47
#8978 #8978
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Du musst noch das $ escapen, sonst versucht Perl dort den Wert der Variablen $3 zu ersetzen. Wenn Du immer Wiki:[tt]use strict[/tt] und use warnings benutzt, wirst Du auf solche Fehler schneller aufmerksam.

(wobei use strict in diesem Fall nix gebracht hätte, aber use warnings)

so sollte es gehen:
Code: (dl )
1
2
3
4
5
6
7
8
#!/usr/bin/perl

use strict;
use warnings;

chomp(my @lines = `metastat -p|grep "p "|awk '{print \$3}'|sort|uniq`);

print @lines;
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
sde42dn
 2006-11-17 15:01
#8979 #8979
User since
2006-10-26
11 Artikel
BenutzerIn
[default_avatar]
das war die Lösung.

vielen Dank!
<< >> 3 Einträge, 1 Seite



View all threads created 2006-11-17 14:35.