LinuxShell脚本编程实例

LinuxShell脚本编程实例
LinuxShell脚本编程实例

#! /bin/sh

echo "Current command is $0"

echo "The first parameter is $1"

echo "The second parameter is $2"

echo "The third parameter is $3"

echo "Total of parameters if $#"

echo "Current PID is $$"

#!/bin/bash

times=0

until [ "$times" = 3 ];

do

echo "I love linux."

sleep 2

times=`expr $times + 1`

done

#!/bin/bash

# menu shell script. samli 2004.4.19 until

echo "List Directory..........1"

echo "Change Directory........2"

echo "Edit File...............3"

echo "Remove File.............4"

echo "Exit Menu...............5"

read choice

test $choice = 5

do

case $choice in

1) ls;;

2) echo "enter target directory:" read dir

cd $dir

;;

3) echo "enter file name:"

read file

vi $file

;;

4) echo "enter file name:"

read file

rm $file

;;

5) echo "Goodbye"

;;

*) echo "illegal option, please input again." esac

done

#! /bin/sh

var1="abcd efg"

echo $var1

var2=1234

echo "The value of var2 is $var2"

echo $HOME

echo $PATH

echo $PWD

#! /bin/sh

num=0

while [ $num -le 10 ]

do

num=`expr $num + 1`

if [ $num -eq 5 ]

then

continue

fi

square=`expr $num \* $num`

echo $square

done

#!/bin/bash

# Gnu bash versions 2.x

# The Party Program--Invitations to friends from the

# "guest" file

guestfile=./guests # ~/shell/guests

if [[ ! -e "$guestfile" ]]

then

printf "${guestfile##*/} non-existent"

exit 1

fi

export PLACE="Sarotini's"

(( Time=$(date +%H) + 1 ))

set cheese crackers shrimp drinks "hot dogs" sandwiches

for person in $(cat $guestfile)

do

if [[ $person = root ]]

then

continue

else

# Start of here document

mail -v -s "Party" $person

Hi ${person}! Please join me at $PLACE for a party!

Meet me at $Time o'clock.

I'll bring the ice cream. Would you please bring $1

and anything else you would like to eat? Let me know

if you can't make it.

Hope to see you soon.

Your pal,

ellie@$(hostname)

FINIS

shift

if (( $# == 0 ))

then

set cheese crackers shrimp drinks "hot dogs" sandwiches fi

fi

done

printf "Bye..."

#!/bin/sh

# Standard AT&T Bourne Shell

# The Party Program--Invitations to friends from the

# "guest" file

guestfile=./guests # /home/ellie/shell/guests

if [ ! -f "$guestfile" ]

then

echo "慴asename $guestfile?non-existent"

exit 1

fi

PLACE="Sarotini's"

export PLACE

Time=`date +%H`

Time=`expr $Time + 1`

set cheese crackers shrimp drinks "hot dogs" sandwiches

for person in $(cat $guestfile)

do

if [ $person = root ]]

then

continue

else

# Start of here document

mail -v -s "Party" $person

Hi $person! Please join me at $PLACE for a party!

Meet me at $Time o'clock.

I'll bring the ice cream. Would you please bring $1

and anything else you would like to eat? Let me know

if you can't make it.

Hope to see you soon.

Your pal,

ellie@`hostname`

FINIS

shift

if [ $# -eq 0 ]

then

set cheese crackers shrimp drinks "hot dogs" sandwiches fi

fi

done

echo "Bye..."

#!/bin/sh

# Scriptname: args

# Script to test command line arguments

echo The name of this script is $0.

echo The arguments are $*.

echo The first argument is $1.

echo The second argument is $2.

echo The number of arguments is $#.

oldargs=$*

set Jake Nicky Scott # reset the positional parameters echo All the positional parameters are $*.

echo The number of postional parameters is $#.

echo "Good~Vbye for now, $1 "

set $(date) # reset the positional parameters

echo The date is $2 $3, $6.

echo "The value of \$oldargs is $oldargs."

set $oldargs

echo $1 $2 $3

# Name: bigfiles

# Purpose: Use the find command to find any files in the root

# partition that have not been modified within the past n (any

# number within 30 days) days and are larger than 20 blocks

# (512 byte blocks)

if (( $# != 2 )) # or [ $# -ne 2 ]

then

echo "Usage: $0 mdays size " 1>&2

exit 1

fi

if (( $1 0 || $1 > 30 )) # or [ $1 -lt 0 -o $1 -gt 30 ] then

echo "mdays is out of range"

exit 2

fi

if (( $2 # or [ $2 -le 20 ]

then

echo "size is out of range"

exit 3

fi

find / -xdev -mtime $1 -size +$2

#!/bin/bash

# Scriptname: checker

# Script to demonstrate the use of special variable

# modifiers and arguments

name=${1:?"requires an argument" }

echo Hello $name

#!/bin/bash

# This is the first Bash shell program of the day.

# Scriptname: greetings

# Written by: Barbara Bashful

echo "Hello $LOGNAME, it's nice talking to you."

echo "Your present working directory is `pwd`."

echo "You are working on a machine called `uname -n`." echo "Here is a list of your files."

ls # list files in the present working directory

echo "Bye for now $LOGNAME. The time is `date +%T`!"

#!/bin/bash

# Scriptname: greetings2

echo "This script is called $0."

echo "$0 $1 and $2"

echo "The number of positional parameters is $#"

#!/bin/bash

# Scriptname: idcheck

# purpose:check user id to see if user is root.

# Only root has a uid of 0.

# Format for id output:uid=9496(ellie) gid=40 groups=40

# root's uid=0

id=`id | gawk -F'[=(]' '{print $2}'` # get user id echo your user id is: $id

if (( id == 0 )) # or [ $id -eq 0 ]

then

echo "you are superuser."

else

echo "you are not superuser."

fi

相关主题
相关文档
最新文档