As far as I know (somebody correct me if I'm wrong) the original bourne shell does not have arrays; except one which can be changed with the "set" command. this array initially stores the command line arguments. You get the array values with $1 $2 etc, and the size with $# I will rewrite GameboyRMH's script for the original bourne shell (/bin/sh) and post it here then he can make the necessary changes. I hope you don't mind GameboyRMH. Edit: ok, I changed some of it. There are probably some syntax differences I didn't spot but see if it works with this and tell me where it complains Code: #! /bin/sh #arguments: servername serverip share username password mountpoint #username, password and mountpoint are optional arguments if [ $# -lt 3 ] ; then #Go into "wizard mode" if there are no arguments echo -e "Not enough arguments passed - running wizard" echo -e "Enter the server name:" read servername echo -e "Enter the server IP" read serverip echo -e "Enter the share name or path" read sharename echo -e "Enter a username, or leave blank for anonymous" read username username_orig=$username if [ "${username}" != "" ]; then echo -e "Enter a password" read password fi echo -e "Enter a mount point, or leave blank for automatic" read mountpoint fi #if arguments were passed from the command line, use them: if [ $# -gt 2 ]; then servername=$1 serverip=$2 sharename=$3 username=$4 username_orig=$username password=$5 mountpoint=$6 fi #set default mountpoint if the user didn't enter one if [ "${mountpoint}" = "" ]; then mountpoint="/media/Remote_Filesystems/$servername@$sharename" #make sure the Remote_Filesystems directory exists mountparentdir="/media/Remote_Filesystems" if [ -d $mountparentdir ]; then echo -e "$mountparentdir found." else echo -e "Creating $mountparentdir" mkdir $mountparentdir fi fi #requote variables to escape special characters servername=$(printf '%q' "$servername") serverip=$(printf '%q' "$serverip") sharename=$(printf '%q' "$sharename") username=$(printf '%q' "$username") password=$(printf '%q' "$password") mountpoint=$(printf '%q' "$mountpoint") #check for mountpoint and create it if it doesn't exist if [ -d $mountpoint ]; then echo -e "Mount point already exists - will attempt to use." else echo -e "Creating mountpoint $mountpoint" mkdir $mountpoint fi echo -e "Attempting to mount //$servername/$sharename at $mountpoint" #Run the mount command if [ "${username_orig}" = "" ]; then mount -t cifs //$servername/$sharename $mountpoint -o user=$username pass=$password ip=$serverip else mount -t cifs //$servername/$sharename $mountpoint -o ip=$serverip fi #chown mountpoint to user chown -R user $mountpoint echo -e "To unmount this share, run umount $mountpoint as root"
#! /bin/sh #arguments: servername serverip share username password mountpoint #username, password and mountpoint are optional arguments if [ $# -lt 3 ] ; then #Go into "wizard mode" if there are no arguments echo -e "Not enough arguments passed - running wizard" echo -e "Enter the server name:" read servername echo -e "Enter the server IP" read serverip echo -e "Enter the share name or path" read sharename echo -e "Enter a username, or leave blank for anonymous" read username username_orig=$username if [ "${username}" != "" ]; then echo -e "Enter a password" read password fi echo -e "Enter a mount point, or leave blank for automatic" read mountpoint fi #if arguments were passed from the command line, use them: if [ $# -gt 2 ]; then servername=$1 serverip=$2 sharename=$3 username=$4 username_orig=$username password=$5 mountpoint=$6 fi #set default mountpoint if the user didn't enter one if [ "${mountpoint}" = "" ]; then mountpoint="/media/Remote_Filesystems/$servername@$sharename" #make sure the Remote_Filesystems directory exists mountparentdir="/media/Remote_Filesystems" if [ -d $mountparentdir ]; then echo -e "$mountparentdir found." else echo -e "Creating $mountparentdir" mkdir $mountparentdir fi fi #requote variables to escape special characters servername=$(printf '%q' "$servername") serverip=$(printf '%q' "$serverip") sharename=$(printf '%q' "$sharename") username=$(printf '%q' "$username") password=$(printf '%q' "$password") mountpoint=$(printf '%q' "$mountpoint") #check for mountpoint and create it if it doesn't exist if [ -d $mountpoint ]; then echo -e "Mount point already exists - will attempt to use." else echo -e "Creating mountpoint $mountpoint" mkdir $mountpoint fi echo -e "Attempting to mount //$servername/$sharename at $mountpoint" #Run the mount command if [ "${username_orig}" = "" ]; then mount -t cifs //$servername/$sharename $mountpoint -o user=$username pass=$password ip=$serverip else mount -t cifs //$servername/$sharename $mountpoint -o ip=$serverip fi #chown mountpoint to user chown -R user $mountpoint echo -e "To unmount this share, run umount $mountpoint as root"
#! /bin/sh #arguments: servername serverip share username password mountpoint #username, password and mountpoint are optional arguments if [ $# -lt 3 ] ; then #Go into "wizard mode" if there are no arguments echo -e "Not enough arguments passed - running wizard" echo -e "Enter the server name:" read servername echo -e "Enter the server IP" read serverip echo -e "Enter the share name or path" read sharename echo -e "Enter a username, or leave blank for anonymous" read username username_orig=$username if [ "${username}" != "" ]; then echo -e "Enter a password" read password fi echo -e "Enter a mount point, or leave blank for automatic" read mountpoint fi #if arguments were passed from the command line, use them: if [ $# -gt 2 ]; then servername=$1 serverip=$2 sharename=$3 username=$4 username_orig=$username password=$5 mountpoint=$6 fi #set default mountpoint if the user didn't enter one if [ "${mountpoint}" = "" ]; then mountpoint="/media/Remote_Filesystems/$servername@$sharename" #make sure the Remote_Filesystems directory exists mountparentdir="/media/Remote_Filesystems" if [ -d $mountparentdir ]; then echo -e "$mountparentdir found." else echo -e "Creating $mountparentdir" mkdir $mountparentdir fi fi #requote variables to escape special characters #servername=$(printf '%q' "$servername") #serverip=$(printf '%q' "$serverip") #sharename=$(printf '%q' "$sharename") #username=$(printf '%q' "$username") #password=$(printf '%q' "$password") #mountpoint=$(printf '%q' "$mountpoint") #check for mountpoint and create it if it doesn't exist if [ -d $mountpoint ]; then echo -e "Mount point already exists - will attempt to use." else echo -e "Creating mountpoint $mountpoint" mkdir $mountpoint fi echo -e "Attempting to mount //$servername/$sharename at $mountpoint" #Run the mount command if [ "${username_orig}" = "" ]; then mount -t cifs //$servername/$sharename $mountpoint -o user=$username,pass=$password,ip=$serverip else mount -t cifs //$servername/$sharename $mountpoint -o ip=$serverip fi #chown mountpoint to user chown -R user $mountpoint echo -e "To unmount this share, run umount $mountpoint as root"