Awk parameter aus dem Aufrufsyntax auslesen
Lösungsart egal.
Aufrufsyntax:
$ bash script1 such test1 /projects/ae/test.txt -t $1,$2
vielen Dank schonmal
Aufrufsyntax:
$ bash script1 such test1 /projects/ae/test.txt -t $1,$2
#!/bin/bash
suche=$2
datei=$3
filter=$4
spalte=$5
if [ "$filter" = "-t" ]
then
awk '{print $2,$3}' $datei
# Nun möchte ich eigentlich, dass die Zahlen im “print” automatisch von dem Script aus dem
# Aufrufsyntax ausgelesen werden.
elif [ "$filter" = "-l" ]
then
cd /atix/projects/azubis/ae
ls $datei
else
egrep "^$suche" "$datei"
fi
vielen Dank schonmal
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 192478
Url: https://administrator.de/contentid/192478
Ausgedruckt am: 22.11.2024 um 11:11 Uhr
10 Kommentare
Neuester Kommentar
Sei auch ungegrüßt.
Warum schreibst Du $2 $3 statt $suche und $datei?
Wenn Du das noch so erklären könntest, daß jemand, der Dein Problem nicht kennt, weiß, was Du willst, könnte Dir vielleicht geholfen werden. Vermutlich mußt Du da nur \$spalte oder sowas in der Art hinschreiben, aber wir wissen ja nicht, was Du genau haben willst und was dein problem dabei ist.
lks
Zitat von @Lucas-O:
Aufrufsyntax:
$ bash script1 such test1 /projects/ae/test.txt -t $1,$2
awk '{print $2,$3}' $datei
Aufrufsyntax:
$ bash script1 such test1 /projects/ae/test.txt -t $1,$2
awk '{print $2,$3}' $datei
Warum schreibst Du $2 $3 statt $suche und $datei?
- Nun möchte ich eigentlich, dass die Zahlen im “print” automatisch von dem Script aus dem
- Aufrufsyntax ausgelesen werden.
Wenn Du das noch so erklären könntest, daß jemand, der Dein Problem nicht kennt, weiß, was Du willst, könnte Dir vielleicht geholfen werden. Vermutlich mußt Du da nur \$spalte oder sowas in der Art hinschreiben, aber wir wissen ja nicht, was Du genau haben willst und was dein problem dabei ist.
lks
Hallo,
@Lukas
Du hast ein Wunderbares Buch ueber Shellscript Programmierung das solltest Du mal von Anfang bis Ende durcharbeiten.
shift verschiebt die in der Kommandozeile angegeben Argumente.
lese dazu Seite 149 ab da geht es los.
Desweiteren hat Dein script macken, also muss Du herausfinden welche.
Das kannst Du mit set -x ./Dein Script
Was sollen am Anfang $2 $3 etc ???
Umschreib doch mal die Aufgabe fuer uns genau.
Gruss
@Lukas
Du hast ein Wunderbares Buch ueber Shellscript Programmierung das solltest Du mal von Anfang bis Ende durcharbeiten.
shift verschiebt die in der Kommandozeile angegeben Argumente.
lese dazu Seite 149 ab da geht es los.
Desweiteren hat Dein script macken, also muss Du herausfinden welche.
Das kannst Du mit set -x ./Dein Script
Was sollen am Anfang $2 $3 etc ???
Umschreib doch mal die Aufgabe fuer uns genau.
Gruss
Zitat von @Lucas-O:
so nun bin ich fast fertig.
wie kann man im script festlegen, dass wenn ich den aufrufsyntax festlege er vor jede zahl ein $ setzt?
bsp:
Aufrufsyntax:
$ bash script1 such test1 /projects/ae/test.txt -t "1 2 4"
txt file:
la li lu nur der
mann im mond schaut zu
wenn die kleinen kinder schlafen...
ergebnis:
la li nur
mann im schaut
wenn die kinder
vielen dank bis hierhin schonmal
helft mir bitte !!!
ich komme nicht weiter.
dabei muss ich "nur" noch rausfinden, fie ich im script festlegen kann, dass es for jede zahl am ende ein $ setzt...
so nun bin ich fast fertig.
wie kann man im script festlegen, dass wenn ich den aufrufsyntax festlege er vor jede zahl ein $ setzt?
bsp:
Aufrufsyntax:
$ bash script1 such test1 /projects/ae/test.txt -t "1 2 4"
txt file:
la li lu nur der
mann im mond schaut zu
wenn die kleinen kinder schlafen...
ergebnis:
la li nur
mann im schaut
wenn die kinder
vielen dank bis hierhin schonmal
helft mir bitte !!!
ich komme nicht weiter.
dabei muss ich "nur" noch rausfinden, fie ich im script festlegen kann, dass es for jede zahl am ende ein $ setzt...
Hast Du
Awk parameter aus dem Aufrufsyntax auslesen
ausprobiert?
Dann sollte es sofort ins Auge springen. Die Variablen a b und c kannst Du statt direkt zu setzen natürlich auch aus Variablen füttern (oder gleich die variablen in im awk-skript benutzen).
lks
PS: Perm PM gibt es normalerweise keine kostenlosen Support. Du kannst Dich aber hier schlaumachen.
Zitat von @Lucas-O:
dabei muss ich "nur" noch rausfinden, fie ich im script festlegen kann, dass es for jede zahl am ende ein $ setzt...
dabei muss ich "nur" noch rausfinden, fie ich im script festlegen kann, dass es for jede zahl am ende ein $ setzt...
Und hast Du das was ich Dir geschrieben habe schon probiert. Da steht genau das drin.
lks