Hur 'case' och 'if..then' används togs upp i
detta inlägg. Ibland finns det dock skäl att välja 'if..then' framför 'case'. Se följande kod :
torrent| Code: |
1 #!/bin/bash
2
3 #
4 # parameter 1: -r = rtorrent -b = btdownload (rtorrent default)
5 # parameter 2: .torrent-fil
6 #
7
8 RCLIENT="rtorrent -p 51000-51100"
9 BCLIENT="btdownloadcurses.bittornado --minport 51000 --maxport 51100"
10 OCLIENT="btdownloadcurses.bittornado"
11 PWD=`pwd`
12 if [ "$1" != "-r" -a "$1" != "-b" -a "$1" != "-o" ]; then
13 CLIENT=$RCLIENT
14 TORRENTFILE=$1
15 else
16 if [ "$1" = "-b" ]; then CLIENT=$BCLIENT; fi
17 if [ "$1" = "-r" ]; then CLIENT=$RCLIENT; fi
18 if [ "$1" = "-o" ]; then CLIENT=$OCLIENT; fi
19 TORRENTFILE=$2
20 fi
21
22 echo $CLIENT \"$TORRENTFILE\"
23 $CLIENT $PWD/$TORRENTFILE
|
Idén är att användaren ska kunna välja mellan rtorent och bittornado genom att anropa scriptet på olika sätt :
torrent -b "en_torrent_fil.torrent" startar bittornado och sätter portar 51000-511000,
torrent -r "en_torrentfil.torrent" startar rtorrent med samma portar medan
Inlägg ändrat av marwal, den 2007-05-27 15:52