Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Replace Stub Values In One Group Of Files With Actual Values From Another Group Of Files Post 303037331 by spacegoose on Monday 29th of July 2019 11:03:54 PM
Old 07-30-2019
Quote:
Originally Posted by rdrtx1
Code:
for i in new-config-files/*/*                  # for list of files under new directory/subdirectory
do
   [[ -f ${i/new/old} ]] && {                                     # if same file name exists under new and old directories
      awk -F\' '                                                           # use awk with ' as field delimeter
      NR==FNR {val[$4]=$6; next}                       #  for first file read (old) store field 6 in var array stub key name (field 4)
      length(val[$4]) {$6=val[$4]}                        #  for second file read replace field 6 stored for the stub name if it exists
      1                                                                          # print line
      ' ${i/new/old} OFS=\' $i > $i.tmp                  # open old file new file (with ' as delimiter) redirect output to file with tmp extension
      mv -f $i.tmp $i                                                # move tmp extension file name to original file name (clobbers file)
   }
done

# end loop

note: make a couple of test directories to test.
Thanks for the comments. I'm not understanding how the field 4 & 6 numbers are working -- how are these counted?

Assuming I have other lines in these files, will this replace those values too, or only where I have the stub values?
I'd like to only replace the stub values in this case. The old files may have lines that also exist in the new files, whose values I don't want to transpose. It seems to only have replaced the stub values ... how?

Last edited by spacegoose; 07-30-2019 at 12:19 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Find all files with group read OR group write OR user write permission

I need to find all the files that have group Read or Write permission or files that have user write permission. This is what I have so far: find . -exec ls -l {} \; | awk '/-...rw..w./ {print $1 " " $3 " " $4 " " $9}' It shows me all files where group read = true, group write = true... (5 Replies)
Discussion started by: shunter63
5 Replies

2. Shell Programming and Scripting

Awk: Summing values with group criteria

Hi Guys, I have a text file with ";" like separator F1;F2;F3;F4;F5 444;100041;IT;GLOB;1800000000 444;100041;TM;GLOB;1000000000 444;10300264;IT;GLOB;2000000000 444;10300264;IT;GLOB;2500000000 I have to sum the cullums F5 for same F2 and F3 collums The result must be: ... (7 Replies)
Discussion started by: gianluca2
7 Replies

3. Shell Programming and Scripting

search file and group values with problematic tab

hi people; the similar topic is being opened in here and here but i have confused with following condition. so i wanted to open a seperate topic. from my file.txt:... ... ... 110105-16:04:04 192.168.1.1 7.1j Port_NODE_MODEL_M_1_8 stopfile=/tmp/10544... (0 Replies)
Discussion started by: gc_sw
0 Replies

4. Shell Programming and Scripting

Print lines containing same values in a group

Hi, I have a table like this: Name A1 A2 A3 B1 B2 B3 111 abc abc abc cbc cbc cbc 222 acv acv n_n bbc bbc bbc 333 bvv bvv bvv cBx ccx ccx 444 ttk ttk ttk kke kke kke 555 mcr mcr mcr mcr mcr mcr The 1st column is just names... (3 Replies)
Discussion started by: polsum
3 Replies

5. Shell Programming and Scripting

Compare values in two files. For matching rows print corresponding values from File 1 in File2.

- I have two files (File 1 and File 2) and the contents of the files are mentioned below. - I am trying to compare the values of Column1 of File1 with Column1 of File2. If a match is found, print the corresponding value from Column2 of File1 in Column5 of File2. - I tried to modify and use... (10 Replies)
Discussion started by: Santoshbn
10 Replies

6. Shell Programming and Scripting

Sum up the column values group by using some field

12-11-2012,PNL,158406 12-11-2012,RISK,4564 12-11-2012,VAR_1D,310101 12-11-2012,VAR_10D,310101 12-11-2012,CB,866 12-11-2012,STR_VAR_1D,298494 12-11-2012,STR_VAR_10D,309623 09-11-2012,PNL,1024106 09-11-2012,RISK,4565 09-11-2012,VAR_1D,317211 09-11-2012,VAR_10D,317211 09-11-2012,CB,985... (7 Replies)
Discussion started by: manas_ranjan
7 Replies

7. Shell Programming and Scripting

Add the values in second and third columns with group by on first column.

Hi All, I have a pipe seperated file. I need to add the values in second and third columns with group by on first column. MYFILE_28012012_1115|47|173.90 MYFILE_28012012_1115|4|0.00 MYFILE_28012012_1115|6|22.20 MYFILE_28012012_1116|47|173.90 MYFILE_28012012_1116|4|0.00... (3 Replies)
Discussion started by: angshuman
3 Replies

8. Shell Programming and Scripting

Query the table and return values to shell script and search result values from another files.

Hi, I need a shell script, which would search the result values from another files. 1)execute " select column1 from table_name" query on the table. 2)Based on the result, need to be grep from .wft files. could please explain about this.Below is the way i am using. #!/bin/sh... (4 Replies)
Discussion started by: Rami Reddy
4 Replies

9. Shell Programming and Scripting

Replace two values in a file with input from two different files

Hi, I was having the following issue cat input hello1, my name is unix.com. I am awesome. Hope you know this, hello2! cat hello1.txt Hi Friends Hi Folks Hi Well-Wishers cat hello2.txt Honey Sweety Darling Required Output (8 Replies)
Discussion started by: jacobs.smith
8 Replies

10. Shell Programming and Scripting

Replace values between 2 files

I want to replace the third and fourth lines of a 2nd file by the first two lines of a file. Input: file_1 file_1.line_1 file_1.line_2 file_2 file_2.line_1 <file_2.line_2_blank> file_2.line_3 file2.line_4 <file_2.line_5_blank> Output: file_2.line1 <file_2.line_2_blank>... (1 Reply)
Discussion started by: arpagon
1 Replies
TRANSMISSION-EDIT(1)					    BSD General Commands Manual 				      TRANSMISSION-EDIT(1)

NAME
transmission-edit -- command-line utility to modify .torrent files' announce URLs SYNOPSIS
transmission-edit [-h] [-a url] [-d url] [-r search replace] torrentfile(s) DESCRIPTION
transmission-edit command-line utility to modify .torrent files' announce URLs OPTIONS
-h --help Show a short help page and exit. -a --add URL Add an announce URL to the torrent's announce-list if it's not already in the list -d --delete URL Remove an announce URL from the torrent's announce-list -r --replace search replace Substring search-and-replace inside a torrent's announce URLs. This can be used to change an announce URL when the tracker moves or your passcode changes. EXAMPLES
Update a tracker passcode in all your torrents: $ transmission-edit -r old-passcode new-passcode ~/.config/transmission/torrents/*.torrent AUTHORS
Jordan Lee SEE ALSO
transmission-create(1), transmission-daemon(1), transmission-edit(1), transmission-gtk(1), transmission-qt(1), transmission-remote(1), transmission-show(1) http://www.transmissionbt.com/ BSD
June 9, 2010 BSD
All times are GMT -4. The time now is 05:48 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy