The UNIX and Linux Forums  
Hello and Welcome from United States to the UNIX and Linux Forums! Thank You for Visiting and Joining Our Global Community.

Go Back   The UNIX and Linux Forums > Operating Systems > OS X (Apple)
.
google unix.com



OS X (Apple) OS X is a line of Unix-based graphical operating systems developed, marketed, and sold by Apple.

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
Schedule an interactive shell script Chaitrali Shell Programming and Scripting 4 11-08-2007 11:49 AM
Korn shell interactive script leonard905 Shell Programming and Scripting 3 08-02-2007 02:16 PM
How to hide user inputted text for interactive unix shell script? patrickpang Shell Programming and Scripting 1 04-04-2006 08:42 PM
script to create users on many servers dnidiffer Shell Programming and Scripting 1 09-25-2005 02:32 AM
shell scripts to create 100 users xiamin UNIX for Dummies Questions & Answers 9 09-07-2001 01:47 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Powered by Powered by Google
 
LinkBack Thread Tools Search this Thread Rate Thread Display Modes
  #1 (permalink)  
Old 03-12-2008
tlarkin tlarkin is offline
Registered User
  
 

Join Date: Mar 2008
Posts: 36
interactive shell script to create users 10.4

Hello everyone,

Not sure if this is the right place, but OS X isn't your standard Unix, so I figured here would be best. I am looking at creating a script that will be interactive that admins can run to create users.

Now, 10.4 uses netinfo database and netinfo manager to handle it's users. So I am looking at writing a script using the niutil command that the admin can input the full name and the short name of the user and the script does the rest. When we migrate to 10.5 I'll have to convert this script over to the dscl command, but I will cross that bridge when I get there.

I am not quite sure how to make it interactive though, my scripting skills are intermediate at best.

Thanks,
  #2 (permalink)  
Old 03-14-2008
[MA]Flying_Meat [MA]Flying_Meat is offline
Registered User
  
 

Join Date: Sep 2002
Location: San Fran
Posts: 130
Who will be running the interactive user add script? make the script executable by root and no one else. The person issuing the command (launching the script) will need "sudo" privileges, which all local admins accounts have by default.

Here is a page that will help you with the dscl commands:
Porting UNIX/Linux Applications to Mac OS X: Open Directory and the dscl Tool

10.4.x can use dscl too. Might as well use it if you aren't expecting to support the same function in 10.3.

You will basically poll the user for data, and store that data in a variable with the "read" command, for use in making decisions and issuing commands based on the users input.

Some interactive considerations:
echo "Enter a username: "
read username

echo "Add $username? (y/n):
read addflag


Test $addflag, then make the script check if the user already exists. and inform the user if so.

You can use the scripts variable $username where ever a username is required.

Don't take anything for granted. It is possible to add a username to the admin group multiple times, which, while it might not be catastrophic, is very messy. So test, test, test, deploy (but only if you feel it's been tested enough )
  #3 (permalink)  
Old 03-24-2008
tlarkin tlarkin is offline
Registered User
  
 

Join Date: Mar 2008
Posts: 36
well this is for the very rare case of a non network managed machine which the users would set up local accounts and administer basically them self. However, they have requested an easy way to create and manage their own local user accounts so I was looking at making an interactive script. Which in return after that, I can make it sit on the local admin account's desktop and make an apple script to execute the shell script to make it double click executable. Then all they need to do is input the info in the open terminal screen and exit when finished.

There will be one person with admin rights and the rest of the accounts will be managed.

I have written plenty of simple shell scripts in my time but never one fully interactive, other than a menu based shell script that just ran commands by inputting 1, 2, 3, 4 etc, and 0 to exit. I have never written anything that actually asked for input, and then took that input and inserted it into a script.
  #4 (permalink)  
Old 03-27-2008
verno verno is offline
Registered User
  
 

Join Date: Sep 2006
Posts: 14
For creating a regular user account from the command line interactively, try: Create & delete user accounts from the command line on Mac OS X

Cheers,
verno
Closed Thread

Bookmarks

Tags
linux commands, unix commands

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On




All times are GMT -4. The time now is 10:46 PM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios
The UNIX and Linux Forums Content Copyright ©1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant URLs by vBSEO 3.2.0