Sponsored Content
Full Discussion: mv duplicating directories
Top Forums Shell Programming and Scripting mv duplicating directories Post 302535908 by beddo on Saturday 2nd of July 2011 05:21:43 PM
Old 07-02-2011
mv duplicating directories

Hi Folks,
I've put together a script for sorting my backup files into sub folders to be run from a cron job. Each file is named username.tar.gz and the file /etc/trueuserowners contains all users and their owner in the format "user: owner".
The script works fine identifying users and their owners and is as follows:

Code:
#!/bin/bash
_w="/path/to/backups"
_wb="$_w/*.tar.gz"

if [ -d "$_w" ]; then
        for f in $_wb
        do
                _f=$(basename $f)
                _user=${_f%%.*}
                _o=`grep "^$_user:" /etc/trueuserowners`
                _owner=${_o#* }
                if [ ! -d "$_w/$_owner" ]; then
                        `mkdir $_w/$_owner/`
                fi
                `mv $f $_w/$_owner/`
        done
fi

Say I have the following:

/path/to/backups/userabackup.tar.gz
usera is owned by resellera.

The first time the script runs, the script will create the following directory and move userabackup.tar.gz into it:

/path/to/backups/resellera

The script has an if in it to ensure that /path/to.backups/resellera is only created if it does not already exist as you can see. My problem is that the mv command appears to be backing up the directory and creating a new one instead of moving the file into the existing directory and replacing the file if it is already there.

For example:

The second time the script runs, /path/to/backups/resellera will be renamed to /path/to/backups/resellera.1 and a new /path/to/backups/resellera is created.
The third time, /path/to.backups/resellera.1 is renamed /path/to.backups/resellera.2, /path/to.backups/resellera to /path/to.backups/resellera.1 and a new directory created.

I shouldn't need to have the script remove the directory first and the mv command does not create backup directories like this when run from the console. The VERSION_CONTROL environment is not set.
Is there something specific that makes mv act like this when run from a cron job? Do I have to tell it to over-write instead of create these backups?
 

8 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

duplicating 1st row of data

Hi, I have data in the following format: data1 data2 data3 data4 data5 data6 data7 data8 data9 data10 I require the final output to be: data1 data1 data1 data1 i only require the 1st line but I need to replicate it in n rows where n is the number of rows where data... (4 Replies)
Discussion started by: ReV
4 Replies

2. Post Here to Contact Site Administrators and Moderators

Sorry for duplicating posts

SORRY FOR DUPLICATING POSTS, COULD U JUST REMOVE THE FIRST ONE. Thank u. (1 Reply)
Discussion started by: vrguha
1 Replies

3. HP-UX

duplicating ignite tapes

I have a B180L controller running HP-UX 10.2 with an internal DDS2 tape drive and an external Surestore DDS (24gb) tape drive. I want to make duplicate copies of ignite tapes from one tape drive to another. What is the best way to do this? (1 Reply)
Discussion started by: garyb
1 Replies

4. UNIX for Dummies Questions & Answers

remove duplicating lines

Hi, i have a webserver logfile and want to count how many page views there have been. I was thinking about removing lines that begin with the same user and same date&time, because it indicates they were just looking at one page and multiple hits were counted. My question is how do I do this?... (6 Replies)
Discussion started by: JudithBorg
6 Replies

5. Red Hat

Duplicating ethernet speed

Hi guys, Suppose you have a server with two ethernet cards (1GB each) and each cards are connecting to two different switches cisco 3750. My question is: How can I setup my server's network interfaces to increase the throughput up to 2GB? is it possible? If not, do you know another way to up... (3 Replies)
Discussion started by: iga3725
3 Replies

6. UNIX for Dummies Questions & Answers

Duplicating MAC linux or net?

hi guys I have a IBM eServer BladeCenter HS12 with Linux Red Hat 5.4 installed on it, it is using Bonding. ifcfg-bond0 DEVICE=bond0 BOOTPROTO=none ONBOOT=yes TYPE=Ethernet IPADDR=x.x.x.x NETMASK=x.x.x.x GATEWAY=x.x.x.x USERCTL=no IPV6INIT=no PEERDNS=no BONDING_OPTS="miimon=80... (1 Reply)
Discussion started by: karlochacon
1 Replies

7. UNIX for Dummies Questions & Answers

duplicating a line

I have a text file which is the results of running a tests hundreds of times. For simplicity let's say that each test consists of 5 lines of text numbered 1-5 e.g. 1 aaa aaa aaa 2 bbb bbb bbb 3 ccc ccc ccc 4 ddd ddd ddd 5 eee eee eee 1 aaa aaa aaa 2 bbb bbb bbb 3 ccc... (4 Replies)
Discussion started by: millsy5
4 Replies

8. Shell Programming and Scripting

Duplicating and changing sh file

Hello, I have a file named file_1.sh that I want to duplicate into file_2.sh, file_3.sh,..., etc. I also need to change the text within each file so that it would fit the file name. For example, in file_1.sh there is a command to save some output as 'output_1.txt', and also there is an input... (3 Replies)
Discussion started by: haguyw
3 Replies
BAK2DB(8)						      System Manager's Manual							 BAK2DB(8)

NAME
bak2db - Directory Server script for restoring a backup SYNOPSIS
bak2db archivedir [-Z serverID] [-n backendname] [-q] | [-h] DESCRIPTION
Restores the database from a archived backup. The Directory Server must be stopped prior to running this script. OPTIONS
A summary of options is included below: archivedir The directory of the archived database. -Z Server Identifier The server ID of the Directory Server instance. If there is only one instance on the system, this option can be skipped. -n Backend Name The name of the LDBM database to restore. Example: userRoot -q Quiet mode. Reduces output of task. -h Display the usage. EXAMPLE
bak2db /LDAP/backups/20130305/ -Z instance1 -n userRoot bak2db /LDAP/backups/20130305/ -n example DIAGNOSTICS
Exit status is zero if no errors occur. Errors result in a non-zero exit status and a diagnostic message being written to standard error. AUTHOR
bak2db was written by the 389 Project. REPORTING BUGS
Report bugs to http://bugzilla.redhat.com. COPYRIGHT
Copyright (C) 2013 Red Hat, Inc. Mar 5, 2013 BAK2DB(8)
All times are GMT -4. The time now is 01:17 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy