Bash getopts: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Die Seite wurde neu angelegt: „<syntaxhighlight> #!/bin/bash function examine() { FILE=$1 shift echo "Rights on $FILE" for k in $* do case $k in u) echo USER : $(ls -l $FILE | cut -c 1-3) ;…“) |
|||
| Zeile 1: | Zeile 1: | ||
| − | <syntaxhighlight> | + | <syntaxhighlight lang=bash> |
#!/bin/bash | #!/bin/bash | ||
function examine() | function examine() | ||
Version vom 2. Juni 2023, 08:54 Uhr
#!/bin/bash
function examine()
{
FILE=$1
shift
echo "Rights on $FILE"
for k in $*
do
case $k in
u) echo USER : $(ls -l $FILE | cut -c 1-3) ;;
g) echo GROUP: $(ls -l $FILE | cut -c 4-6) ;;
o) echo OTHER: $(ls -l $FILE | cut -c 7-9) ;;
esac
done
}
while getopts ugof: opt
do
case $opt in
u) OPT="${OPT} u";;
g) OPT="${OPT} g";;
o) OPT="${OPT} o";;
f) DAT=$OPTARG;;
?) echo "USAGE: $0 -ugo -f FILE"; exit 2 ;;
esac
done
examine $DAT $OPT
- Erklärung
- Das Program kann mit den Optionen -u -g -o und -f Datei aufgerufen werden.
- Die Optionen ugo werden in der Variable $OPT "gesammelt".
- Alle Optionen werden an die Funktion examine übergeben.
- Die Optionen werden oben getrennt und je nach vorhandener Option werden Anweisungen ausgeführt.