Simple script for adding users


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Simple script for adding users
# 22  
Old 01-10-2013
Quote:
Originally Posted by RudiC
Pls set -vx options in main script, and post the entire log (eventually as an attachment). Without the context, errors are very difficult to track down.
And, pls remove the # in front of the last fi
please check the attachment
# 23  
Old 01-10-2013
Code:
        if [[ "$CNT"-gt "0 ]]; then
                          ^--- pls add double quote ("0")

# 24  
Old 01-10-2013
Quote:
Originally Posted by RudiC
Code:
        if [[ "$CNT"-gt "0 ]]; then
                          ^--- pls add double quote ("0")

I noticed that and after correction :
Code:
./add_user_rudi userlist /filelist /files /
./add_user_rudi: line 33: conditional binary operator expected
./add_user_rudi: line 33: syntax error near `"0"'
./add_user_rudi: line 33: `	if [[ "$CNT"-gt "0" ]]; then'

if [[ "$CNT"-gt "0" ]]; then'

forgot to add space after "$CNT"
# 25  
Old 01-10-2013
Here's a complete version of your copyfiles function as there are still more errors in the version you sent:
Code:
copyFiles() {
        cd $4$user
        old=_old  
        CNT=$(ls|wc -w)
        if [[ "$CNT" -gt "0" ]]; then
                echo "file for $4$user already exists!" 
                echo "Do you want to overwrite the file (y/n):"
                read answer
                if [ "${answer^?}" == "N" ]; then          
                  mv $4$user $user$old
                  mkdir /$4/$user > /dev/null
                fi
        fi
        for i in $(cat $2) 
          do
          cp $3$i $4$user
          done
        chmod 700 $4$user
        }

# 26  
Old 01-10-2013
Quote:
Originally Posted by RudiC
Here's a complete version of your copyfiles function as there are still more errors in the version you sent:
Code:
copyFiles() {
        cd $4$user
        old=_old  
        CNT=$(ls|wc -w)
        if [[ "$CNT" -gt "0" ]]; then
                echo "file for $4$user already exists!" 
                echo "Do you want to overwrite the file (y/n):"
                read answer
                if [ "${answer^?}" == "N" ]; then          
                  mv $4$user $user$old
                  mkdir /$4/$user > /dev/null
                fi
        fi
        for i in $(cat $2) 
          do
          cp $3$i $4$user
          done
        chmod 700 $4$user
        }

still one problem, if selected not to overwrite, it doesnt create user_old folder but overwrites existing files.

Code:
Do you want to overwrite the file (y/n):
+ read answer
n
+ '[' N == N ']'
+ mv /neha neha_old
mv: cannot move `/neha' to a subdirectory of itself, `neha_old'
+ mkdir ///neha
mkdir: cannot create directory `///neha': File exists
cat $2)
cat $2
++ cat /filelist
+ for i in '$(cat $2)'
+ cp /files/file1 /neha
+ for i in '$(cat $2)'
+ cp /files/file2 /neha
+ chmod 700 /neha

check log from attachment.
# 27  
Old 01-10-2013
But - the error msgs are clear, aren't they?
Code:
mv /neha neha_old
mv: cannot move `/neha' to a subdirectory of itself, `neha_old'
mkdir ///neha
mkdir: cannot create directory `///neha': File exists

You need to design a dir structure that won't stand in its own light. And - use the parameters correctly. $4 here seems to contain the root dir. Then, use it consistently everywhere.
BTW - you had $4$user$old in your post #1...
This User Gave Thanks to RudiC For This Post:
# 28  
Old 01-10-2013
Quote:
Originally Posted by RudiC
But - the error msgs are clear, aren't they?
Code:
mv /neha neha_old
mv: cannot move `/neha' to a subdirectory of itself, `neha_old'
mkdir ///neha
mkdir: cannot create directory `///neha': File exists

You need to design a dir structure that won't stand in its own light. And - use the parameters correctly. $4 here seems to contain the root dir. Then, use it consistently everywhere.
BTW - you had $4$user$old in your post #1...
yes! yes! that was the last problem now code is working as it was designed for. Would you believe i have to submit this code tomorrow as my sem1 assignemnt! phew! what a close call!

Rudi, A BIG THANKS to you sir!

@MadeInGermany, thanks a lot for assisting.

am happy!! Smilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script for adding users to file permissions

I need a script to add the following two users ids to the permissions for various files: IIS_WPG and IUSR_CowGirl. I am fairly familiar with scripting but haven't been able to figure out how to do this via a script. Manually doing it is slow. I don't want to create users but only add them to a... (2 Replies)
Discussion started by: Stu Loventhal
2 Replies

2. Windows & DOS: Issues & Discussions

Script for adding users to file permissions

I need a script to add the following two users ids to the permissions for various files: IIS_WPG and IUSR_CowGirl. I am fairly familiar with scripting but haven't been able to figure out how to do this via a script. Manually doing it is slow. I don't want to create users but only add them to a... (2 Replies)
Discussion started by: Stu Loventhal
2 Replies

3. AIX

adding users via smit

I apologize if this is a simple/stupid question. When I add users in smit as root, many(most) of the fields are automatically popluated with some basic default values. Some other admins here have access to create users via sudo, however when they create users (sudo smit users), the user gets... (3 Replies)
Discussion started by: mshilling
3 Replies

4. Shell Programming and Scripting

simple script to mount a folder in all users /home

Go easy on me - first post I need a simple script that will mount a directory in the /home folder of all users. I need to run this on boot and regular intervals as a cron job. I was hoping to achieve this by modifying fstab but it is not possible and I would like to avoid symlinks. I have... (7 Replies)
Discussion started by: barrydocks
7 Replies

5. UNIX for Dummies Questions & Answers

Adding users question

Hello there, I want to add new users to my system, so, being logged in as root I do useradd -m user_name, and the new user is added to the system. The problem is that it has more privileges than I expected. If I do su user_name then I am allowed to do cat /etc/passwd , so it is... (4 Replies)
Discussion started by: help.goes.here
4 Replies

6. Shell Programming and Scripting

Adding delimiter to logged in users

Hi guys! Just was wanting to run a command that would allow me to seperate the currently logged in users. Basically from this format: user1 user2 user3 To: user1|user2|user3 (Note the lack of a pipe at the end, not sure if thats possible) Basically it needs to be in this... (11 Replies)
Discussion started by: crawf
11 Replies

7. Programming

reg adding Users into at.allow and removing from at.allow

Hi , Thanks for your time . I am working on a application , which adds unix user through useradd and deletes user through userdel . both are admin commands . My requirement is i have to add a user into at.allow whenver a unix user is added through my application and the user should be... (4 Replies)
Discussion started by: naren_chella
4 Replies

8. UNIX for Dummies Questions & Answers

Adding users to /etc/group

I'm using SAM to add users on an HP and they're adding fine. But in /etc/group it only lists the group names. It's not adding the users in there. Is there a way to have them put in there without going into SAM and modifying the group and adding them? I guess what I want to happen is when I add... (1 Reply)
Discussion started by: golfhakker
1 Replies

9. Shell Programming and Scripting

Adding a backslash to users' input

Hi, I need to convert user-input from '(this)' to '\(this\)' before passing it to egrep. I've tried using TR, SED and NAWK to add the backslash, but the most I ever get is a backslash without a '(' or ')'. Any ideas? Thanks! (13 Replies)
Discussion started by: netguy
13 Replies

10. Shell Programming and Scripting

Adding users

Anyone have a simple shell script that will prompt and accept screen input for each field that is required in the /etc/passwd file? (3 Replies)
Discussion started by: Relykk
3 Replies
Login or Register to Ask a Question