My script is below and it all works well and fine, however I need to have checks put in for erroneous user input during the smbldap-passwd functions and the ldapadd functions. I've figured out a statement that will look at the exit status of the command and it will remove the user that was added in the previous step and exit but I can't figure out how to put these if statements into my existing script without breaking it. Yes, I'm a new shell scripter so any help will be greatly appreciated. Thanks /opt/IDEALX/sbin/smbldap-passwd $USERNAME if [ $? -ne 0 ] ; then echo exiting!!!! /opt/IDEALX/sbin/smbldap-userdel -r $USERNAME Exisiting script: #!/bin/bash -x TMPFILE=/db/backups/tmp-expire.ldif TMPFILE2=/db/backups/tmp-expire-ou.ldif TMPFILE3=/db/backups/variable3-ou.ldif TMPFILE4=/db/backups/variable4-ou.ldif echo Please enter the username you would like to add to LDAP! read USERNAME if getent passwd | grep -wq $USERNAME then echo $USERNAME already exists in the LDAP database! exit fi echo Please enter the menu group to associate with this account! sleep 1 echo "(guser1,guser2,gsuer3,guser4,guser5,guser6,guser7,guser8,guser9,gadmin,gsuper)" read GUSER if [[ "$GUSER" = guser* || "$GUSER" = "gadmin" || "$GUSER" = "gsuper" ]]; then echo Which LDAP organizational container do you want to add the user to? else echo You entered an invalid group!! exit fi sleep 1 echo "(EXAMPLE1,example2,Default)" sleep 1 echo If you are unsure please enter Default for the LDAP organizational container. read organization if [[ "$organization" = "EXAMPLE1" || "$organization" = "example2" ]]; then echo Please assign a role to this account. elif [ "$organization" = "Default" ]; then /opt/IDEALX/sbin/smbldap-useradd -G 1513,$GUSER,26 -s /bin/ksh -d /home/operations/$USERNAME -a $USERNAME sleep 1 echo Setting the inital LDAP password for $USERNAME. sleep 1 /opt/IDEALX/sbin/smbldap-passwd $USERNAME sleep 1 echo Enforcing password expiration upon first login!!!!!! cat $TMPFILE | sed "s/USER/$USERNAME/g" /db/backups/tmp-expire.ldif > /db/backups/variable3.ldif ldapadd -f /db/backups/variable3.ldif -x -D cn=root,dc=mdvcat,dc=lott -W exit else echo You entered an invalid Organizational Unit!! exit fi sleep 1 echo "(admins,network,developers,vendors)" read role if [[ "$role" = "admins" || "$role" = "network" || "$role" = "developers" || "$role" = "vendors" ]]; then /opt/IDEALX/sbin/smbldap-useradd -G 1513,$GUSER,26 -o $role,$organization -s /bin/ksh -d /home/operations/$USERNAME -a $USERNAME sleep 1 echo Setting the inital LDAP password for $USERNAME. sleep 1 /opt/IDEALX/sbin/smbldap-passwd $USERNAME sleep 1 echo Enforcing password expiration upon first login!!!!!! cat $TMPFILE2 | sed -e "s/USER/$USERNAME/g" /db/backups/tmp-expire-ou.ldif > /db/backups/variable3-ou.ldif cat $TMPFILE3 | sed "s/role/$role/g" /db/backups/variable3-ou.ldif > /db/backups/variable4-ou.ldif cat $TMPFILE4 | sed "s/organization/$organization/g" /db/backups/variable4-ou.ldif > /db/backups/variable5-ou.ldif ldapadd -f /db/backups/variable5-ou.ldif -x -D cn=root,dc=mdvcat,dc=lott -W else echo You entered an invalid role!!! exit fi