Visit Our UNIX and Linux User Community


Rename a log file to old, then create a new log file.


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Rename a log file to old, then create a new log file.
# 1  
Old 10-19-2009
Error Rename a log file to old, then create a new log file.

Hi all,

I have about 15 directories all with exactly the same structure. I have a file in each of them called log.txt. This file sits in /home/ftp/*usernamehere*/ftptransfer/log/

Username here is the only change in each of the 15 directories.

I want to create a SIMPLE shell script that go's into each directory and renames the log.txt files to log.txt.old, and then recreates log.txt (would need to remove the log.txt.old when it runs for the second time.

I kind of had an attempt but ran into a few issues... Heres my code Smilie

Code:
#!/bin/sh
 
for i in /home/ftp/*/ftptransfer/log/; do    
if  [ "$i" != "log.txt" ]; 
 then  
 rm log.txt.old
 mv log.txt log.txt.old
 touch log.txt    
 fi
 done

# 2  
Old 10-19-2009

Code:
for i in /home/ftp/*/ftptransfer/log/
do
  if [ -f "$i/log.txt.old" ]
  then
    mv -f log.txt log.txt.old
  fi
  touch log.txt
done

# 3  
Old 10-19-2009
Thanks alot for your reply cfajohnson but it doesnt seem to work?
# 4  
Old 10-19-2009
Quote:
Originally Posted by mokachoka
Thanks alot for your reply cfajohnson but it doesnt seem to work?

What does "doesnt seem to work" mean?

What does happen?

Do you get any error messages?
# 5  
Old 10-19-2009
Sorry that was a bit vague, it simply creates a log.txt file in the directory i run the script from (which is in my home directory away from the accounts we are attempting to rename the log files).
# 6  
Old 10-19-2009

The script should have read:

Code:
for i in /home/ftp/*/ftptransfer/log/
do
  if [ -f "$i/log.txt.old" ]
  then
    mv -f "$i/log.txt" "$i/log.txt.old"
  fi
  touch "$i/log.txt"
done

Or:

Code:
for i in /home/ftp/*/ftptransfer/log/
do
   (
     cd "$i"
     if [ -f log.txt.old ]
     then
         mv -f log.txt log.txt.old
     fi
     touch log.txt
    )
done


Previous Thread | Next Thread
Test Your Knowledge in Computers #775
Difficulty: Medium
UML state machine is a significantly enhanced realization of the mathematical concept of a finite automaton in computer science applications.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Rename the Linux log file to the rotation date

Hi all, could any provide me a solution for the below requirement. I have two files namely abc.log.1 and abc.log.2 The above files have time stamp as Dec 08 and Dec 09 I need to rename the files as abc.log.1_20141208 and abc.log.2_20141209 and move to another bkp directory. Thanks in... (2 Replies)
Discussion started by: bhaskar t
2 Replies

2. Shell Programming and Scripting

Problem - create log file

I need to create shell script (check system ) to display the output to the console and write these output to a log file at the same time. My shell script is like that Main() { .... .... } MainIt takes about 30s to display all the output to the console. Then I put this command to the... (4 Replies)
Discussion started by: bobochacha29
4 Replies

3. Shell Programming and Scripting

How to create a log file that simply shows the name of a file and what directory it was moved to.

Newbie...Thank you for your help. I am creating my first script that simply generates subdirectories to organize video, music, and text files within those subdirectories from my current working directory. PROBLEM: I am trying to write a log file that contains, for each file, the original file... (0 Replies)
Discussion started by: BartleDoo
0 Replies

4. Shell Programming and Scripting

Create Log File in ksh itself

Hi, I want to create a log file for a running ksh , and the log file absolute path I want to give in ksh itself. To elaborate this - Say I have a ksh - timer.ksh and I want to create a log timer_log.log when I run, to trace this. I am aware of the fact that this can be done using redirection... (4 Replies)
Discussion started by: vinay4889
4 Replies

5. Solaris

ttymon cannot create log file

Hi all. My box run Solaris 10. When I reboot the machine I have the message " ttymon cannot create logfile". Anyone know that's going on? How to prevent this message? Thanks in advance. (0 Replies)
Discussion started by: wolfgang
0 Replies

6. Shell Programming and Scripting

How to create a log file of a script?

hi, How to create a log file of a script. Like spool does . I want to create a log file of whatever the script is doing step wise. like -xvf does or something better then that. thanks ... (3 Replies)
Discussion started by: madfox
3 Replies

7. Shell Programming and Scripting

Create log file in NFS via SSH

OS: Sun Solaris ver 9 From server1: as root userid ssh server2 /export/home/user1/.ssh/s2.sh logtest=/export/home/user1/test.log log1=/u03/user2/comn/admin/log/ uname -a >> $logtest --> log file able to generate uname -a >> $log1 --> not able to as /u03/user2/comn/admin/log is NFS from... (3 Replies)
Discussion started by: KhawHL
3 Replies

8. Shell Programming and Scripting

Rename log file according to log file age

Hi Experts, i am new in shell programming. i am having some problem of checking the log file age and rename it. for example: when i run the shell script, the script will check how old is the log file, if the log is already 10 days old(variable). then the log file will rename. hope to... (3 Replies)
Discussion started by: ewawong
3 Replies

9. UNIX for Dummies Questions & Answers

create log file

Accept command line input of a directory keep a .logfile of the contents of the directory inputed if a .logfile does not exist create one for the file that is missing a .logfile and create a message stating .logfile was updated if all .logfiles are there display message stating all files are... (1 Reply)
Discussion started by: knc9233
1 Replies

10. UNIX for Dummies Questions & Answers

Need to create .bat file to store log file

Hi guys. Can someone point me to a resource that explains this? Basically these are websphere logs that need to be stored daily, I'm on sunOS 5.8. Each new file stored could have the current time as its filename. The script could be run on a cron which I can set up. I'm just not sure how to write... (0 Replies)
Discussion started by: dirtybrown
0 Replies

Featured Tech Videos