"" Weglöschen aus Textdatei
- geschlossen
- Saugerli
- 985 Aufrufe 11 Antworten
Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
-
-
-
Das funktioniert leider nicht
Es wird alles aus meiner Textdatei gelöscht!
Hier mal mein Script:
Quellcode
- #!/opt/perl/bin/perl
- #
- # Liste Einträge in der DB
- #
- use Pg;
- use Fun; #/opt/perl/lib/5.6.1
- my @Zeilen;
- $basename="andreas";
- $port=5432;
- # DB connecten
- $conn=Pg::connectdb("dbname=$basename port=$port");
- $cs = $conn->status;
- if ($cs != PGRES_EMPTY_QUERY ) {
- $em = $conn->errorMessage;
- print "Keine Verbindung zur Datenbank\n$em\n";
- exit;
- } else {
- print "Zugriff auf Datenbank!\n";
- }
- my $test = open(DATEI, "> /share/staff/AD-Script/ADleichen.txt");
- if (not defined($test)){
- die "Fehler beim Oeffnen der Datei: $!\n";
- } else
- {
- print "Zugriff auf Datei!\n";
- while($Rechnername = <DATEI>)
- {
- $Rechnername=~ tr/\"//;
- print $Rechnername."\n";
- push @RechnernamenArray,$Rechnername;
- }
- }
- print @RechnernamenArray[0];
- print @RechnernamenArray[1];
- print @RechnernamenArray[2];
- print @RechnernamenArray[3];
Das Script soll aus einer Textdatei Rechnernamen suchen und diese dann in der Datenbank vom Status verändern.
Der SQL Codde ist noch nicht drin, das hier ist nur ein TestScript um die "" zu löschen.
Das Push und die Print Befehle am ende sind nur zum testen, kann man sich wegdenken genauso wie den Datenbankaufruf.
Danke soweit schonmalDieser Beitrag wurde bereits 4 mal editiert, zuletzt von Saugerli ()
-
-
hm auch das Killt die ganze Textdatei
Habe das Script mal gekürzt (- Datanbankaufruf)
Quellcode
- #!/opt/perl/bin/perl
- #
- # Liste Einträge in der DB
- #
- use Pg;
- use Fun; #/opt/perl/lib/5.6.1
- my @Rechnername;
- my $test = open(DATEI, "> /share/staff/AD-Script/ADleichen.txt");
- if (not defined($test)){
- die "Fehler beim Oeffnen der Datei: $!\n";
- } else
- {
- print "Zugriff auf Datei!\n";
- while($Rechnername = <DATEI>)
- {
- $Rechnername=~ s/\"//g;
- print $Rechnername."\n";
- push @RechnernamenArray,$Rechnername;
- }
- }
- print @RechnernamenArray[0];
- print @RechnernamenArray[1];
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Saugerli ()
-
Nimm mal das ">" raus sonst machst du ne IO Umlenkung da rein
und da du den DB Access eh in dem Script machst, kannst du dir das Umlenken auch sparen, oder ist das wichtig? -
In der gekürzten Version ist der nicht mehr dabei mit dem DB Access, daher egalo.
Du meinst das ">" an dieser Stelle oder?
my $test = open(DATEI, "> /share/staff/AD-Script/ADleichen.txt"); -
Jo, sonst is ja auch keins da
-
In der Ausgabe tauchen die Rechner dann ohne das "" auf aber in der Textdatei passiert nichts. Dort stehen die Rechner weiterhin mit "".
Wäre zwar auch eine Möglichkeit da die Werte ja jetzt ohne das "" vararbeitet werden, es wäre aber dennoch schöner das auch in der Textdatei zu haben.
Danke soweit schonmal ! -
Dann packst du die Sachen die jetzt auf dem stdout landen entweder per perl in eine Datei
oder du rufst die rmqm.pl (Bzw wie sie heissen mag), als eigenständiges Programm auf und
pipst die Ausgabe des Scripts (die auf dem stdout landet) in eine Datei -
Hm ok Danke!
-
=> Closed
Gruß
Broken SwordAuf dem Abstellgleis sah man ihn liegen,
Auf dem Abstellgleis zwischen Schwelle und Gestein,
Auf dem Abstellgleis im strömenden Regen,
Auf dem Abstellgleis allein.
-
Teilen
- Facebook 0
- Twitter 0
- Google Plus 0
- Reddit 0