[linux-l] bash listen funktionen
Ivan F. Villanueva B.
iv at artificialidea.com
Di Mai 23 12:37:21 CEST 2006
Hi Volker,
Am So, Mai 21, 2006 07:18:54 +0200, Volker Grabsch schrieb:
> On Sat, May 20, 2006 at 09:48:50PM +0200, Ivan F. Villanueva B. wrote:
> > Kann man Arrays als Parameter für Funktionen benutzen ?
>
> Auch wenn sich diese Frage schon erledigt hat: Ich persönlich würde in
> der Bash erst gar keine Listen nehmen. Außer vielleicht für für
> Argumente.
>
> Das meiste geht IMHO leichter, wenn man die Daten als Stream lässt, und
> dann grep, sed oder awk rüberjagt, mit denen diese "listenartigen"
> Operationen viel leichter zur Hand gehen, als wenn man das zu Fuß
> ("elementweise") in Shellscript ausdrückt.
> [examples]
Vielen Dank für die Beispiele ! Ich werde sie langsam nochmal lesen und BTW sed
lernen.
> BTW, wie hast du es eigentlich gelöst (mit $*, etc.) ?
#!/bin/sh
# configure wmii
xwrite() {
file="$1"; shift
echo -n "$@" | wmiir write "$file"
}
#select next view to the current from a list of tags
adjacent() {
active_tag=`wmiir read /view/name`
index=1
for i in "$@" ; do
(( index += 1 ))
if [ "$i" == "$active_tag" ]; then
if [ $index -gt $# ]; then
xwrite /ctl view "$1"
else
xwrite /ctl view "${!index}"
fi
return
fi
done
}
next() {
adjacent `wmiir read /tags`
}
prev() {
adjacent `wmiir read /tags | tac`
}
--
Ivan F. Villanueva B.
A.I. library: http://www.artificialidea.com
<<< The European Patent Litigation Agreement (EPLA) >>>
<<< will bring Software patents by the backdoor >>>
<<< http://www.no-lobbyists-as-such.com/florian-mueller-blog/epla/ >>>
<<< http://wiki.ffii.de/EplaEn >>>
Mehr Informationen über die Mailingliste linux-l