Merkwürdiger grep oder pipe Effekt

E

ebel

Jungspund
Hallo Leute,

hiermit möchte ich den Besitzer des aktuellen Ordners bestimmen
Code:
ls -dl . | grep -oP '^d[rwx-]* *[0-9]+ *[^ ]+' | grep -oP '[^ ]+$'
ergibt
Code:
owner
[leere Zeile]
Die zusätzliche leere Zeile versteh ich nicht, denn code vor der zweiten pipe
Code:
ls -dl . | grep -oP '^d[rwx-]* *[0-9]+ *[^ ]+'
ergibt
Code:
drwxr-xr-x 2 owner
ohne eine weitere Zeile
Wieso zaubert die zweite Pipe eine Leerzeile hinzu. Ist das mit den hintereinandergeschalteten pipes nicht korrekt?

Gruß
ebel
 
gawk wahrscheinlich hier die bessere Wahl

Vielen Dank zbled,

das sieht erheblich eleganter aus :respekt: Liegt einfach an meinen nicht vorhandenen gawk Kenntnissen :think: Aber das schau ich mir gleich mal besser an.:brav:

Gruss
ebel
 
Erstmal: welche Shell/OS?

Deine grep-Optionen -oP kennt mein grep nicht, damit nur eine Vermutung: es wird zusätzlich das Zeilenende gematcht und ausgegeben.

Gruss, Xanti
 
bash / Suse Linux 10.2

Peinlich, aber wie frage ich den Namen meiner shell ab?
Ich weiß zwar das ich Suse 10.2 drauf habe, aber wenn ich für ein Installationskript das abfragen muß, welchen Befehl benutze ich da?
 
bash / Suse Linux 10.2

Peinlich, aber wie frage ich den Namen meiner shell ab?
Ich weiß zwar das ich Suse 10.2 drauf habe, aber wenn ich für ein Installationskript das abfragen muß, welchen Befehl benutze ich da?

Code:
echo $SHELL
 
Wenn ich wissen muss welche Shell gerade in Verwendung ist mach ich jeweils
Code:
echo $0
Das mit $SHELL ist mir nicht in den Sinn gekommen...
Gibt mir das in jedemfall die richtige Antwort, oder kann ich da ins Messer laufen?

Gruss
d22
 
In $0 steht der Name des "Parents". Im Falle, dass Du auf $0 in einem Skript zugreifst, steht da der Name des Skiptes drin.

Gruss, Xanti
 
Ja, das ist mir klar soweit. Aber auf der Kommandozeile habe ich so in diesem Falle auch eine zuferlässige Auskunft über die verwendete Shell...

Dank und Gruss
d22
 

Ähnliche Themen

Server-Monitoring mit RRDTool

Zurück
Oben