Difference between revisions of "Bash examples"
From Teknologisk videncenter
m |
m (→for) |
||
Line 101: | Line 101: | ||
</source> | </source> | ||
</div> | </div> | ||
+ | == Menu eksempel == | ||
+ | <div style="margin: 10px 100px"> | ||
+ | <source lang="bash"> | ||
+ | #!/usr/bin/bash | ||
+ | # | ||
+ | # Dette er en kommentarlinier | ||
+ | # | ||
+ | # Bla Bla | ||
+ | # | ||
+ | ######## | ||
+ | |||
+ | forbrug() | ||
+ | { | ||
+ | echo -en "($2)\t har brugt $1 kilobytes\t" | ||
+ | grep $2 /etc/passwd | cut -d: -f5 | ||
+ | } | ||
+ | |||
+ | LOOP=yes | ||
+ | |||
+ | while test $LOOP == "yes" | ||
+ | do | ||
+ | |||
+ | clear | ||
+ | echo -en " BRUGER MENU: | ||
+ | |||
+ | 1: Online brugere. | ||
+ | 2: Diskplads brugere | ||
+ | 3: | ||
+ | |||
+ | -: Afslut | ||
+ | |||
+ | Indtast valg: " | ||
+ | |||
+ | read VALG | ||
+ | |||
+ | case $VALG in | ||
+ | 1) clear | ||
+ | echo -en " B R U G E R E L O G G E T I N D " | ||
+ | finger | less -P"Tast q for at afslutte" | ||
+ | ;; | ||
+ | 2) clear | ||
+ | echo -e " DISKPLADS FORBRUG BRUGERBASERET" | ||
+ | echo -e " =================================\n" | ||
+ | cd /home | ||
+ | du -ks * 2>/dev/null | sort -rn | less -P"Tast q for at afslutte" | ||
+ | ;; | ||
+ | 3) clear | ||
+ | echo -e "Dette menupunkt er ikke udviklet endnu" | ||
+ | echo -en "\n Tast <ENTER> for at fortsaette." | ||
+ | read DUMMY | ||
+ | |||
+ | ;; | ||
+ | -) LOOP=no | ||
+ | ;; | ||
+ | *) echo "\x07" | ||
+ | ;; | ||
+ | esac | ||
+ | done | ||
+ | </source> |
Revision as of 08:18, 27 May 2009
bash builtins
if command
Greetings
#!/bin/bash
#Uncomment HOUR=`date +%H` when using for real
#HOUR=`date +%H`
#
#HOUR=$1 only for testing purposes.....
HOUR=$1
if test $HOUR -le 7
then
echo "You are early go home"
else if test $HOUR -le 8
then
echo "You are early"
else if test $HOUR -lt 12
then
echo "Good morning, Vietnam"
else if test $HOUR -lt 16
then
echo "Good evening"
fi
fi
fi
fi
while
count example
#!/bin/bash
COU=1
while test $COU -lt 10000
do
echo -en "COU = $COU\r"
COU=`expr $COU + 1`
done
case
secret password example
#!/bin/bash
# Read the username from the terminal
echo -en "Enter username: "
read USERNAME
# Read the password from the terminal not echoing the characters
echo -en "Enter password: "
stty -echo
read PASSWORD
stty echo
# Find the username in the case and check password
case $USERNAME in
john|John) if test $PASSWORD = "banana"
then
echo "Access granted"
else
echo "Access denied...."
exit
fi
;;
eve|Eve) if test $PASSWORD = "apple"
then
echo "Access granted"
else
echo "Access denied...."
exit
fi
;;
*) echo "Access denied...."
exit
;;
esac
echo "The secret information is 198273"
for
"ADD" users example
#!/bin/bash
USERLIST="bob eve john henry george jane ursula"
for USER in $USERLIST
do
echo -en "Creating user $USER"
# Next three line just pretend to add a user. Just playing :-)
echo "user $USER login permitted" >> /tmp/allowedUsers
sleep 1
echo -e "....[DONE]"
done
Menu eksempel
#!/usr/bin/bash
#
# Dette er en kommentarlinier
#
# Bla Bla
#
########
forbrug()
{
echo -en "($2)\t har brugt $1 kilobytes\t"
grep $2 /etc/passwd | cut -d: -f5
}
LOOP=yes
while test $LOOP == "yes"
do
clear
echo -en " BRUGER MENU:
1: Online brugere.
2: Diskplads brugere
3:
-: Afslut
Indtast valg: "
read VALG
case $VALG in
1) clear
echo -en " B R U G E R E L O G G E T I N D "
finger | less -P"Tast q for at afslutte"
;;
2) clear
echo -e " DISKPLADS FORBRUG BRUGERBASERET"
echo -e " =================================\n"
cd /home
du -ks * 2>/dev/null | sort -rn | less -P"Tast q for at afslutte"
;;
3) clear
echo -e "Dette menupunkt er ikke udviklet endnu"
echo -en "\n Tast <ENTER> for at fortsaette."
read DUMMY
;;
-) LOOP=no
;;
*) echo "\x07"
;;
esac
done