Sponsored Content
Top Forums UNIX for Dummies Questions & Answers While loop in a nested if returns 'do unmatched' Post 302233966 by switchkill on Monday 8th of September 2008 10:00:59 PM
Old 09-08-2008
<CODE>
#! /bin/ksh

clear
echo "Enter location of home directory"
echo
read home
if [ ! -d ${home} ]; then

echo
echo "**********************************************"
echo "*The home directory specified does not exist!*"
echo "**********************************************"
echo
echo "Directory ${dir} needs to be created"
echo "to continue!"
echo
echo "Press <y> to create or <n> to exit"
echo
read INPUT

if [ ! $INPUT = "y" ]; then
echo "User must have home dir."
echo "press any key to start again"
read b
/ACCT/use
fi
mkdir -p ${home}
fi
echo "Enter location of file where user information is kept."
read user

if [ -s $user ]; then
echo
echo $home
while read user
do
in=`echo $user |cut -c1`
sur=.`echo $user |cut -d" " -f2`
com=`echo $user |cut -d: -f2`
gid=`echo $user |cut -d: -f3`
ACCT=${in}${sur}
echo "account $ACCT"
echo "comment: $com"
ver=`grep ${ACCT}: "/etc/passwd"`
if [ ! -n $ver ]
then
ACCT="${ACCT}1"
fi
useradd -g ${gid} -d ${home}/${ACCT} -m -s /bin/bash -c "${com}" ${ACCT}
chown -R ${ACCT} ${home}/${ACCT}
chgrp -R ${gid} ${home}/${ACCT}
chmod 755 ${home}/${ACCT}
echo "Account ${ACCT} created."
echo
done < ${user}
else
echo "File $user does not exist"
echo "Setup cannot contine"
echo "Press enter to return to main menu"
read
/ACCT/CASE
fi
tp1=`sed -n 1p $user |cut -c1`
tp2=.`sed -n 1p $user |cut -d" " -f2`
passw=${tp1}${tp2}
passwd ${passw}
PASSWORD=`grep "$passw" /etc/shadow |cut -d: -f2`

while read user
do
int=`echo $user |cut -c1`
surt=.`echo $user |cut -d" " -f2`
ACCT=${int}${surt}
ed /etc/shadow <<EOF
g/${ACCT}:/s/:\*LK\*:/:${PASSWORD}:
w
q
EOF

done < $user

echo "The following accounts have been created sucsesfuly"
ver=`grep ${ACCT}: "/etc/passwd"
if [ -n $ver ]; then
echo `grep " " ${userd}1 |cut -d: -f1`
fi
echo `grep " " $user |cut -d: -f1`
echo
echo "Press enter to return to the main menu"
echo
read
/ACCT/CASE
</CODE>
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

nested loop

I have two do loops. When I break of the inner loop it doesn't go back to the outer loop but exit the program. (5 Replies)
Discussion started by: chinog
5 Replies

2. Shell Programming and Scripting

Variable in While Loop Nested If

Hi all, I'm having problems with the setting a variable in a nested if statement. It doesn't seem to change even if it mets the 'if' condition. My script essentially looks for a user name from the output from a kerberos command. When I find the user name, I tried to change a variable and exit... (6 Replies)
Discussion started by: geass
6 Replies

3. Shell Programming and Scripting

Nested Loop becomes slow

Hello I have some nested loop to display files and form menu item. The part of the code is below. I found that after runnining the script for a while the display becomes very slow. Does ksh shell provided any easy way to release variables, reinit, etc. while ];do script=0 ... (2 Replies)
Discussion started by: ekb
2 Replies

4. Shell Programming and Scripting

Nested loop in Unix

Hi, I have the following script which is two while loops, but it is working only for the Inner loop without going back to the outer loop. the aim of this script is to remove data files from memory after each five times for each setting of the rotate parameter #!/bin/csh set hdir =... (1 Reply)
Discussion started by: moon218
1 Replies

5. Shell Programming and Scripting

for loop returns more output with awk

I need to get total number of hdisk not assigned to any VGs. PDC # lspv |grep None |awk '{print $1}' |wc 131 131 1099 So, it shows 131 hdisks. I need to look at the individual hdisk fget_config info like below: PDC # fget_config -Av |grep hdisk230 hdisk230 dac1 229... (4 Replies)
Discussion started by: Daniel Gate
4 Replies

6. Shell Programming and Scripting

Nested for loop in bash

Hi, How to use values in one for loop to other for loop. say "$sf_rel" variable has values "2011/W2 2011/G2" I want to use these values in inner for loop to process properly. $branch variable has G2 and 6 What is happening is outer for loop $i has 2011/W2 it is entering into inner... (3 Replies)
Discussion started by: Anjan1
3 Replies

7. Shell Programming and Scripting

Nested if loop

Hi Team, I just want to check whether my nested if loop used is correct or not. if ] if ] export1 else export2 fi else if ] export3 else export4 fi fi Thanks Shiva (5 Replies)
Discussion started by: shivashankar_S
5 Replies

8. Programming

MPI C++ in a nested loop

I have a MPI program like this: void slave1(int j){ MPI_Status status; MPI_Recv(&j,1,MPI_INT,0,0,MPI_COMM_WORLD,&status);} void slave2(int j){ MPI_Status status; MPI_Recv(&j,1,MPI_INT,0,1,MPI_COMM_WORLD,&status);} int main(int argc, char *argv){ int numprocs, rank; ... (0 Replies)
Discussion started by: wanliushao
0 Replies

9. UNIX for Dummies Questions & Answers

Nested loop -bash

I am using the following nested loop for i in {1..3} do for y in {1..3} do if ; then echo P0${i}R${y}.fas mv P0${i}R${y}.fas P${i}R${y}.fas read -t 5 fi done done I was wondering if I can use a character such as * or ? instead of my second variable y. I tried R in... (3 Replies)
Discussion started by: Xterra
3 Replies
lppasswd(1)							    Apple Inc.							       lppasswd(1)

NAME
lppasswd - add, change, or delete digest passwords. SYNOPSIS
lppasswd [ username ] lppasswd -a [ -g groupname ] username lppasswd -x username DESCRIPTION
lppasswd adds, changes, or deletes passwords in the CUPS digest password file, passwd.md5. When run by a normal user, lppasswd will prompt for the old and new passwords. When run by the super-user, lppasswd can add new accounts (-a username), change existing accounts (user- name), or delete accounts (-x username) in the digest password file. Digest usernames do not have to match local UNIX usernames. OPTIONS
lppasswd supports the following options: -g groupname Specifies a group other than the default system group. SECURITY ISSUES
By default, the lppasswd program is not installed to allow ordinary users to change their passwords. To enable this, the lppasswd command must be made setuid to root with the command: chmod u+s lppasswd While every attempt has been made to make lppasswd secure against exploits that could grant super-user privileges to unprivileged users, paranoid system administrators may wish to use Basic authentication with accounts managed by PAM instead. SEE ALSO
lp(1), lpr(1), http://localhost:631/help COPYRIGHT
Copyright 2007-2013 by Apple Inc. 22 February 2008 CUPS lppasswd(1)
All times are GMT -4. The time now is 01:41 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy