Variable übergeben in Script

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
frindly
Beiträge: 1085
Registriert: 23.10.2007 08:13:26
Wohnort: Recklinghausen

Variable übergeben in Script

Beitrag von frindly » 24.02.2010 10:19:53

Hallo,
ich möchte gern eine callto Variable an Ekiga übergeben
Jetzt würd ich das Script so schreiben:

Code: Alles auswählen

#!/bin/sh
ekiga -c %variable%
aber ... wie bekomm ich die variable, die als erster parameter übergeben wird weitergereicht an ekiga???
Zuletzt geändert von Meillo am 24.02.2010 10:30:32, insgesamt 1-mal geändert.
Grund: code-Tags ergänzt

Benutzeravatar
Meillo
Moderator
Beiträge: 9254
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Variable übergeben in Script

Beitrag von Meillo » 24.02.2010 10:26:01

frindly hat geschrieben: [...] wie bekomm ich die variable, die als erster parameter übergeben wird [...]
Grundlagen des Shellscriptings: $1 hält den erste Parameter. $2 den zweiten. $@ bzw. $* alle.

Siehe:
http://tldp.org/HOWTO/Bash-Prog-Intro-H ... html#ss8.2
http://tldp.org/LDP/abs/html/othertypesv.html#EX17
Use ed once in a while!

Benutzeravatar
frindly
Beiträge: 1085
Registriert: 23.10.2007 08:13:26
Wohnort: Recklinghausen

Re: Variable übergeben in Script

Beitrag von frindly » 24.02.2010 10:30:37

hallo!
danke!
genau

jetzt sieht mein script so aus:
#!/bin/sh
ekiga -c %1

damit wird die variable 1 an das script weiterleitet. aber ich hab noch ein problem.
die variable ist eine telefonnummer die angerufen werden soll. jetzt hat die variable den wert callto://0000000
die zeichen callto:// müssen aber weggelöscht werdne. kann ich das mit der shell auch, das z.b. die ersten 9 zeichen gelöscht werden, und eine 0 davorgehängt wird?

Benutzeravatar
Meillo
Moderator
Beiträge: 9254
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Variable übergeben in Script

Beitrag von Meillo » 24.02.2010 10:35:18

frindly hat geschrieben: die variable ist eine telefonnummer die angerufen werden soll. jetzt hat die variable den wert callto://0000000
die zeichen callto:// müssen aber weggelöscht werdne. kann ich das mit der shell auch, das z.b. die ersten 9 zeichen gelöscht werden, und eine 0 davorgehängt wird?
Das geht z.B. mit Parameter Expansion:
http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_06_02 hat geschrieben: ${parameter#word}
Remove Smallest Prefix Pattern. The word shall be expanded to produce a pattern. The parameter expansion shall then result in parameter, with the smallest portion of the prefix matched by the pattern deleted.
btw: Den Wert einer Variablen bekommt man mit $, nicht mit %.
Use ed once in a while!

yeti

Re: Variable übergeben in Script

Beitrag von yeti » 24.02.2010 10:38:41

frindly hat geschrieben:jetzt sieht mein script so aus:
#!/bin/sh
ekiga -c %1
$1

Antworten