• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Bash script Problem

Jamsven

London Pepping
Registriert
21.11.07
Beiträge
2.046
Hallo,
ich muss folgendes machen:
Erstellen Sie die Shellprozedur display_file, welche eine als Argument übergebene Datei zeilenweise anzeigt, wobei jede Zeile in senkrechte Striche | eingefasst werden soll.

Der Befehl:

./display_file filename
könnte etwa folgendes ausgeben:
|zeile 1|
|zeile 2|
nun bin ich schon soweit gekommen:
Code:
#!bin/bash
for zeile2 in `cat $1` ; do
	echo "| $zeile2 |"	
	done
Nur leider interpretiert die for Schleife wortweise...weiß einher wie ich das Zeilenweise hinbekomme?
 

dusty1000

Weißer Trierer Weinapfel
Registriert
22.09.06
Beiträge
1.508
#!/bin/bash
cat $1 | xargs -J% -L1 echo "|" % "|"
 

Jamsven

London Pepping
Registriert
21.11.07
Beiträge
2.046
Cool danke!!!
Nur eine frage, was macht die Option J%
 

Jamsven

London Pepping
Registriert
21.11.07
Beiträge
2.046
Jo schon klar, nur es gibt so Situationen wo man das noch mal andersweitig erklärt bekommen muss.

-J% setzt Quasi die aktuelle Zeile in % ein....so verstehe ich das...
 

ins0m

Gloster
Registriert
05.10.07
Beiträge
61
Viele wegen führen nach Rom.
besonders weil ich das so unleserlich finde empfehle ich dir doch mal einen Blick auf awk zu werfen:
#!/bin/bash
cat $1 | awk '{print "|"$0"|"}'