Schrift
[thread]12983[/thread]

Mehrzeiliges sed Komando aus Perl

Leser: 1


<< >> 4 Einträge, 1 Seite
trequ
 2009-01-12 10:34
#117867 #117867
User since
2008-07-30
7 Artikel
BenutzerIn
[default_avatar]
Hallo,

ich möchte mit einem Perl Script über sed eine Zeile in eine Datei einfügen.

Ich sende Befehle über rsh mit folgendem Befehl:

Code: (dl )
1
2
$rsh_cmd = '[RSH Befehl]';
$response = `echo \'$rsh_cmd\' | rsh [HOSTNAME] -l [USERNAME] /bin/sh -`;

Das funktioniert so weit.

Ich möchte nun allerdings eine Datei editieren und an einer bestimmten Stelle eine Zeile einfügen. (Konkret: User in die passwd eintragen)
Nicht einfach unten anfügen, sondern an einer bestimmten Stelle einfügen.

Der hierfür notwendige sed Befehl würde so aussehen:
Code: (dl )
1
2
sed '/^[Suchstring]/ a\
[Insert-String]' passwd


Das Problem das ich habe ist nun dieser hier notwendige Zeilenumbruch nach dem a\

Auf Linux Kiste gehts, wenn man den Zeilenumbruch einfach weglässt, allerdings auf dem Zielsystem nicht, da dies eine SunOS Kiste ist.

Kann man den Zeilenumbruch irgendwie escapen?

Ich habe bereits diesen Thread dazu gefunden:
http://www.unix.com/shell-programming-scripting/20775-appending-line-sed-works-linux-but-not-solaris.html
Werde allerdings aus dem dort angegebenen ^V und ^J nicht schlau.

Sorry wenn das das falsche Forum ist, aber ich wusste net so recht wo hin damit.

mfg
Daniel
Gast Gast
 2009-01-12 16:08
#117875 #117875
So vielleicht?
Code: (dl )
"sed '/^[Suchstring]/ a\\\n[Insert-String]' passwd"
Gast Gast
 2009-01-13 15:36
#117903 #117903
trequ+2009-01-12 09:34:55--
ich möchte mit einem Perl Script über sed eine Zeile in eine Datei einfügen.
...
Ich sende Befehle über rsh mit folgendem Befehl:


Warum machst Du das nicht gleich mit perl?

- Datei in Perl öffnen,
- zeilenweise lesen, bei Suchstring print $_ . "neuer user:...:...:...\n", ansonsten print $_
- Datei schliessen
- sich freuen, gleichzeitig Komplexität und Anzahl der Prozesse reduziert zu haben ;-)

ääääh, wirklich rsh??? Also ich bin nun schon seit 8 Jahren Linux/Unix-Admin und habe noch nie rsh verwendet, vor allem weil das viel bessere und viel sicherere ssh Standard ist.

Gruss, Sven
FoolAck
 2009-01-13 17:38
#117907 #117907
User since
2008-05-02
69 Artikel
BenutzerIn
[default_avatar]
Crosspost


---
//Modedit Gwendragon: Inhalt vom Link geändert
---
<< >> 4 Einträge, 1 Seite



View all threads created 2009-01-12 10:34.