Sponsored Content
Full Discussion: home directory
Top Forums Shell Programming and Scripting home directory Post 302307916 by quirkasaurus on Thursday 16th of April 2009 03:44:17 PM
Old 04-16-2009
My preferred method of dealing with things like this is to do in 2 or 3 steps,
not all at once.

Here's the first script:

Code:
#!/bin/ksh

#----------------------------------------------------------------------#
# head to home partition.                                              #
#----------------------------------------------------------------------#
cd /home

/bin/ls |
while read dir ; do

#----------------------------------------------------------------------#
# Not a directory, next....                                            #
#----------------------------------------------------------------------#
  if [ ! -d $dir ]; then
    continue
  fi

  cd $dir

#----------------------------------------------------------------------#
# Untar the tar file....                                               #
#----------------------------------------------------------------------#
  cp /fullpath/tar_file.gz .
  gunzip tar_file.gz

  chmod -R *

  cd /home

done | tee /tmp/log1

Once that thing is debugged and working correctly,
I use a code generator to create the next dangerous type commands:
( mv commands in this case.... )

Code:
#!/bin/ksh

#----------------------------------------------------------------------#
# head to home partition.                                              #
#----------------------------------------------------------------------#
cd /home

/bin/ls |
while read dir ; do

  cd /home/$dir/public_html/test1

#----------------------------------------------------------------------#
# Randomly rename 6 files.                                             #
#----------------------------------------------------------------------#
  num=0
  /bin/ls *.txt |
  while read file_nm ; do

    (( check = $RANDOM % 2 ))

    if [ $check -eq 0 ]; then
      continue
    fi

    (( num = num + 1 ))

    echo /bin/mv $PWD/$file_nm $PWD/newword${num}.word

    if [ $num -ge 6 ]; then
      break
    fi
  done ### while doing random renaming....

  cd /home

done |
  tee /tmp/log2

Then, before executing, I examine the contents of /tmp/log2.
If the commands in there look right --- then I execute that script with:

Code:
/bin/ksh -xvf /tmp/log2 2>&1 | tee /tmp/log3

Using this method decreases the risk incurred at each step and
provides a log for each step also.

HTH
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

c++ home directory??

when i compile *.cpp files the compiler didn't find the non standart includes.If i have to put the full path of the includet files where shall i begin from root dirctory or i heve to put includet files in cpp home directory??? can i compile java files in unix(linux mandrake 7) if yes haw... (3 Replies)
Discussion started by: user666
3 Replies

2. UNIX for Dummies Questions & Answers

cd into home directory ~

I'm trying to cd into a home directory with cd ~username_here and I'm getting the following error: ~username_here: does not exist The directory exists and I can directly go to it via cd /export/home/username_here without any problems. Any suggestions? (4 Replies)
Discussion started by: here2learn
4 Replies

3. UNIX for Dummies Questions & Answers

home directory

Hi what is the difference between the directory named /home and the user's home directory? can anyone plz reply? really confuse about it!!!!!!!! thank you (1 Reply)
Discussion started by: nokia3100
1 Replies

4. Programming

Getting Home Directory

Hi I need to get the home directory of current user who is running the program, also i need to store the value in a particular variable and pass to the function. thanks in advance (4 Replies)
Discussion started by: cutechaps
4 Replies

5. SuSE

Could not chdir to home directory

Hi, on logging into oracle account i got these error message Could not chdir to home directory /home/oracle: No such file or directory /usr/X11R6/bin/xauth: error in locking authority file /home/oracle/.Xauthority found the command used in creating user was usermod -d /home/oracle -m... (5 Replies)
Discussion started by: saha
5 Replies

6. Solaris

Restricting SFTP user to a defined directory and home directory

Hi, I've created solaris user which has both FTP and SFTP Access. Using the "ftpaccess" configuration file options "guest-root" and "restricted-uid", i can restrict the user to a specific directory. But I'm unable to restrict the user when the user is logged in using SFTP. The aim is to... (1 Reply)
Discussion started by: sftpuser
1 Replies

7. Solaris

home directory for roleadd

hi all.. by seeing the subject, you can judge that i am new bee to solaris. my question in mind is 'Why do we need to specify a home directory for roleadd ?'. specifying a home directory for user is meaningful because user oriented preferences can be placed inside it. RBAC uses attributes in... (1 Reply)
Discussion started by: starworse@yahoo
1 Replies

8. Solaris

Not able to create directory in /home.

I am working on Solaris 10 machine with autofs(auto_home) disabled. But when I am creating any directory inside /home like /home/Telco, it's going in sleep, and nothing is happening until I manually end the process. Can any one help me out here? ---------- Post updated 2014-01-14 at 05:05... (2 Replies)
Discussion started by: nixhead
2 Replies

9. Solaris

SunOS confusing root directory and user home directory

Hello, I've just started using a Solaris machine with SunOS 5.10. After the machine is turned on, I open a Console window and at the prompt, if I execute a pwd command, it tells me I'm at my home directory (someone configured "myuser" as default user after init). ... (2 Replies)
Discussion started by: egyassun
2 Replies
getusershell(3C)					   Standard C Library Functions 					  getusershell(3C)

NAME
getusershell, setusershell, endusershell - get legal user shells SYNOPSIS
#include <unistd.h> char *getusershell(void); void setusershell(void); void endusershell(void); DESCRIPTION
The getusershell() function returns a pointer to a legal user shell as defined by the system manager in the file /etc/shells. If /etc/shells does not exist, the following locations of the standard system shells are used in its place: /bin/bash /bin/csh /bin/jsh /bin/ksh /bin/pfcsh /bin/pfksh /bin/pfsh /bin/sh /bin/tcsh /bin/zsh /sbin/jsh /sbin/pfsh /sbin/sh /usr/bin/bash /usr/bin/csh /usr/bin/jsh /usr/bin/ksh /usr/bin/pfcsh /usr/bin/pfksh /usr/bin/pfsh /usr/bin/sh /usr/bin/tcsh /usr/bin/zsh /usr/xpg4/bin/sh The getusershell() function opens the file /etc/shells, if it exists, and returns the next entry in the list of shells. The setusershell() function rewinds the file or the list. The endusershell() function closes the file, frees any memory used by getusershell() and setusershell(), and rewinds the file /etc/shells. RETURN VALUES
The getusershell() function returns a null pointer on EOF. BUGS
All information is contained in memory that may be freed with a call to endusershell(), so it must be copied if it is to be saved. SunOS 5.10 30 Aug 2004 getusershell(3C)
All times are GMT -4. The time now is 05:13 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy