Sponsored Content
Top Forums Shell Programming and Scripting Writing over an old file using AWK Post 302539658 by gd9629 on Monday 18th of July 2011 10:30:29 AM
Old 07-18-2011
Writing over an old file using AWK

Hey guys!

This should be fairly easy to most, not me evidently!

I've written a script (see below). This script is going to be run daily, on a Task Scheduler, as data is going to be continuously added to the files it reads from(all the .dat files in the '2011' folder).

Basically, whenever the script is run, instead of writing over the old file, it just adds to it, so I have the exact same data over and over again, plus bits of new data.

Is there any way of writing over the old file each time the script is run?

Help is very much appreciated Smilie

Code:
#!/bin/bash

# input files from each day of data and combine into one big file
find /u/Picarro/DataLog/2011 -type f -name "*dat" -exec cat {} >> data.dat \;

#use new combined data as input file
IN_all='/u/Picarro/DataLog/2011/data.dat' 
	
# the csv file to create for all data called 'data.csv' in the respective directory
OUT_all='/u/Picarro/DataLog/2011/Awk/data.csv'		

# gawk files to create csv file
GAWK='/u/Picarro/DataLog/2011/Awk/Format_trial.csv.awk'

#produce the OUT file from the IN file(s)
$GAWK $IN_all >> $OUT_all

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

writing to a file using awk

using awk, we can read a specific column of a file. is it possible to write to a specific column of a file too? and how? (if possible) (7 Replies)
Discussion started by: gfhgfnhhn
7 Replies

2. Shell Programming and Scripting

hi help in writing awk script(urgently)

hi to all i have file like this file.txt this is naryana expect hyderabad is a cool place now climate VISAKHSAPATNAM became very cool #vizag is my birth place #hyderabad is a cool place #now climate of hyd became very cool #vizag is my birth place #hyderabad is a cool place ... (7 Replies)
Discussion started by: LAKSHMI NARAYAN
7 Replies

3. Shell Programming and Scripting

help in writing awk script, plz urgent

I have a file like this I have to I have input file this , I want to give the out put in the below input file (NARAYANA 1 ENDING AT (100, 16383) ,NARAYANA 2 ENDING AT (100, 32766) ,NARAYANA 3 ENDING AT (100, 49149) ,NARAYANA 4 ENDING AT (100, 65535) ,NARAYANA 5... (8 Replies)
Discussion started by: LAKSHMI NARAYAN
8 Replies

4. Shell Programming and Scripting

plz help in writing awk script

hi buddies pls help in this matter i have file like this input file -------------------------- (PARTITION PARTITION_1 VALUES LESS THAN (101, 16383 ) TABLESPACE PART_1 ,PARTITION PARTITION_2 VALUES LESS THAN (101, 32766 ) TABLESPACE PART_2 ,PARTITION PARTITION_3 VALUES LESS THAN (101,... (3 Replies)
Discussion started by: LAKSHMI NARAYAN
3 Replies

5. Shell Programming and Scripting

AWK Help- Writing Data into a File

Hi All, I need to maintain a AUDIT file in system for every incoming and outgoing file. For this i am trying to append a record by using the AWK every time the file arriving. I have used the code as below. AWK '{print "FILENAME IS", $1,"DATE IS", $2}' >> AUDITFILE.txt $1 and $2 are global... (1 Reply)
Discussion started by: Raamc
1 Replies

6. Shell Programming and Scripting

Writing output into different files while processing file using AWK

Hi, I am trying to do the following using AWK program. 1. Read the input data file 2. Parse the record and see if it contains errors 3. If the record contains errors, then write it into Reject file, else, write into usual output file or display it on the screen Here is what I have done -... (6 Replies)
Discussion started by: vidyak
6 Replies

7. Shell Programming and Scripting

Help in writing a find/replace script using awk

Hi All, I need to write a script that will go through 600+ files and perform find and replace. I was going to use sed but there is a level of complexity that is doing my head in. To explain: I have 600+ files that have a line in them that reads (for example) FILE=DCLCLHST... (4 Replies)
Discussion started by: Kocko
4 Replies

8. UNIX for Dummies Questions & Answers

awk: issues for writing a script

%%%%% (7 Replies)
Discussion started by: lucasvs
7 Replies

9. Shell Programming and Scripting

help with writing a awk/sed script

Hi, I thought I am getting pretty good with sed and awk, but now I dont have a way out of this question. I have a table 0.5 16 1.3 14 0.25 15 0.85 16 I want to make a column 3 which contains values that are (corresponding $2 value/sum of all $2). Please help me out here. Thanks. (6 Replies)
Discussion started by: jamie_123
6 Replies

10. Shell Programming and Scripting

awk - writing matching pattern to a new file and deleting it from the current file

Hello , I have comma delimited file with over 20 fileds that i need to do some validations on. I have to check if certain fields are null and then write the line containing the null field into a new file and then delete the line from the current file. Can someone tell me how i could go... (2 Replies)
Discussion started by: goddevil
2 Replies
PERIODIC.CONF(5)					      BSD File Formats Manual						  PERIODIC.CONF(5)

NAME
periodic.conf -- periodic job configuration information DESCRIPTION
The file periodic.conf contains a description of how daily, weekly and monthly system maintenance jobs should run. It resides in the /etc/defaults directory and parts may be overridden by a file of the same name in /etc, which itself may be overridden by the /etc/periodic.conf.local file. The periodic.conf file is actually sourced as a shell script from each of the periodic scripts and is intended to simply provide default con- figuration variables. The following variables are used by periodic(8) itself: local_periodic (str) List of directories to search for periodic scripts. This list is always prefixed with /etc/periodic, and is only used when an argument to periodic(8) is not an absolute directory name. <dir>_output (path or list) What to do with the output of the scripts executed from the directory dir. If this variable is set to an absolute path name, output is logged to that file, otherwise it is taken as one or more space separated email addresses and mailed to those users. If this variable is not set or is empty, output is sent to standard output. For an unattended machine, suitable values for daily_output, weekly_output, and monthly_output might be ``/var/log/daily.log'', ``/var/log/weekly.log'', and ``/var/log/monthly.log'' respectively, as newsyslog(8) will rotate these files (if they exists) at the appropriate times. <dir>_show_success <dir>_show_info <dir>_show_badconfig (bool) These variables control whether periodic(8) will mask the output of the executed scripts based on their return code (where dir is the base directory name in which each script resides). If the return code of a script is '0' and <dir>_show_success is set to ``NO'', periodic(8) will mask the script's output. If the return code of a script is '1' and <dir>_show_info is set to ``NO'', periodic(8) will mask the script's output. If the return code of a script is '2' and <dir>_show_badconfig is set to ``NO'', periodic(8) will mask the script's output. If these variables are set to neither ``YES'' nor ``NO'', they default to ``YES'', ``YES'' and ``NO'' respectively. Refer to the periodic(8) manual page for how script return codes are interpreted. The following variables are used by the standard scripts that reside in /etc/periodic/daily: daily_clean_tmps_enable (bool) Set to ``YES'' if you want to clear temporary directories daily. daily_clean_tmps_dirs (str) Set to the list of directories to clear if daily_clean_tmps_enable is set to ``YES''. daily_clean_tmps_days (num) When daily_clean_tmps_enable is set, this must also be set to the number of days old that a file's access and modification times must be before it is deleted. daily_clean_tmps_ignore (str) Set to the list of files that should not be deleted when daily_clean_tmps_enable is set to ``YES''. Wild card characters are permitted. daily_clean_tmps_verbose (bool) Set to ``YES'' if you want the removed files to be reported in your daily output. daily_clean_msgs_enable (bool) Set to ``YES'' if you wish old system messages to be purged. daily_clean_msgs_days (num) Set to the number of days that files must not have been modified before they are deleted. If this variable is left blank, the msgs(1) default is used. daily_clean_rwho_enable (bool) Set to ``YES'' if you wish old files in /var/who to be purged. daily_clean_rwho_days (num) Set to the number of days that files must not have been modified before they are deleted. daily_clean_rwho_verbose (bool) Set to ``YES'' if you want the removed files to be reported in your daily output. daily_accounting_enable (bool) Set to ``YES'' if you want to rotate your daily accounting files. No rotations are necessary unless accounting_enable is enabled in rc.conf(5). daily_accounting_compress (bool) Set to ``YES'' if you want your daily accounting files to be compressed using gzip(1). daily_accounting_save (num) When daily_accounting_enable is set, this may also be set to the number of daily accounting files that are to be saved. The default is ``3''. daily_accounting_flags (str) Set to the arguments to pass to the sa(8) utility (in addition to -s) when daily_accounting_enable is set to ``YES''. The default is -q. daily_status_disks_enable (bool) Set to ``YES'' if you want to run df(1) (with the arguments supplied in daily_status_disks_df_flags). daily_status_disks_df_flags (str) Set to the arguments for the df(1) utility when daily_status_disks_enable is set to ``YES''. daily_status_network_enable (bool) Set to ``YES'' if you want to run netstat -i. daily_status_network_usedns (bool) Set to ``YES'' if you want to run netstat(1) without the -n option (to do DNS lookups). daily_status_rwho_enable (bool) Set to ``YES'' if you want to run uptime(1) (or ruptime(1) if rwhod_enable is set to ``YES'' in /etc/rc.conf). daily_status_mailq_enable (bool) Set to ``YES'' if you want to run mailq(1). daily_status_mailq_shorten (bool) Set to ``YES'' if you want to shorten the mailq(1) output when daily_status_mailq_enable is set to ``YES''. daily_status_include_submit_mailq (bool) Set to ``YES'' if you also want to run mailq(1) on the submit mail queue when daily_status_mailq_enable is set to ``YES''. This may not work with MTAs other than sendmail(8). daily_local (str) Set to a list of extra scripts that should be run after all other daily scripts. All scripts must be absolute path names. The following variables are used by the standard scripts that reside in /etc/periodic/weekly: weekly_whatis_enable (bool) Set to ``YES'' if you want to run /usr/libexec/makewhatis.local. This script regenerates the database used by the apropos(1) command. weekly_local (str) Set to a list of extra scripts that should be run after all other weekly scripts. All scripts must be absolute path names. The following variables are used by the standard scripts that reside in /etc/periodic/monthly: monthly_accounting_enable (bool) Set to ``YES'' if you want to do login accounting using the ac(8) command. monthly_local (str) Set to a list of extra scripts that should be run after all other monthly scripts. All scripts must be absolute path names. FILES
/etc/defaults/periodic.conf The default configuration file. This file contains all default variables and values. /etc/periodic.conf The usual system specific variable override file. /etc/periodic.conf.local An additional override file, useful when /etc/periodic.conf is shared or distributed. SEE ALSO
apropos(1), calendar(1), df(1), diff(1), gzip(1), man(1), msgs(1), netstat(1), nice(1), ac(8), newsyslog(8), periodic(8), sendmail(8) HISTORY
The periodic.conf file appeared in FreeBSD 4.1. AUTHORS
Brian Somers <brian@Awfulhak.org> BSD
May 12, 2007 BSD
All times are GMT -4. The time now is 06:12 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy