Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Generate files and use csv data to replace multiple variables in a template Post 303038564 by apalex on Friday 6th of September 2019 08:46:03 AM
Old 09-06-2019
Generate files and use csv data to replace multiple variables in a template

I have a source csv file consists of first field as variable name, and the rest are site-specific information (converted from excel file, where site -specific values in columns). I am trying to create a file for every site using a template and replace the multiple variables with values from the csv. I used sed but it takes too many find/replace substitutions. What is the best way to use in my script? Thanks in advance.

Sample csv:
---------------
Code:
$ cat multiple-replace-Book1.csv 
var_Site,SITE-A1,SITE-A2,SITE-A3,SITE-B1,SITE-B2,SITE-C2,SITE-C3,SITE-C4
var_Name,HOST-A1,HOST-A2,HOST-A3,HOST-B1,HOST-B2,HOST-C2,HOST-C3,HOST-C4
var_Ipaddress,11.11.11.1,11.11.11.2,11.11.11.3,22.22.22.1,22.22.22.3,33.33.33.1,33.33.33.2,33.33.33.3
var_Port,22,22,22,22,22,22,22,22
var_Location,Bay1,Bay5,Bay3,Bay1,Bay2,Bay4,Bay2,Bay3
var_City,London,London,London,Rome,Rome,Paris,Paris,Paris
var_Comment,Comment1,Comment2,Comment3,Comment4,Comment5,Comment6,Comment7,Comment8
var_Data,Data1,Data2,Data3,Data4,Data5,Data6,Data7,Data8
var_String,String1,String2,String3,String4,String5,String6,String7,String8

Template content:
-----------------------
Code:
Test connection to $var_Host from $var_Location in $var_City
Use $var_Ipaddress $var_Port to connect
Note: Apply this $var_Data and $var_String
Check: $var_Comment

Desired output file = $var_Site-file.txt
-------------------------
Code:
SITE-A1-file.txt (with site-A1 values)
SITE-A2-file.txt (with site-A2 values)

Moderator's Comments:
Mod Comment
Code tags please as per forum rules

Last edited by Peasant; 09-06-2019 at 10:14 AM.. Reason: Added code tags.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Using SED to generate new file from template

Hi there! I am using a BASH script to read a CSV file (containing variable values)using while read, and for every record I want SED to get a template from a file, and using the variables read from the CSV, write a new file. #!/bin/bash current_ifs=$IFS ; #backup original IFS, need ","... (12 Replies)
Discussion started by: ppucci
12 Replies

2. Shell Programming and Scripting

generate report based on data in files.

Hi All, I need to develop a shell script which does sanity check of a data file, as below. 1. For DATE columns, it should check if date is given in proper format or not? For example, if format of date is expected as DD-MON-YYYY HH24:MI:SS and we received the date in formation like DDMMYYYY HH24,... (1 Reply)
Discussion started by: ace_friends22
1 Replies

3. Shell Programming and Scripting

How to generate a csv files by separating the values from the input file based on position?

Hi All, I need help for doing the following. I have a input file like: aaaaaaaaaabbbbbbbbbbbbbbbbbbbb cccbbbbbaaaaaadddddaaaabbbbbbb now I am trying to generate a output csv file where i will have for e.g. 0-3 chars of each line as the first column in the csv, 4-10 chars of the line as... (3 Replies)
Discussion started by: babom
3 Replies

4. Shell Programming and Scripting

Find and replace variables using a csv table

I have a flat file (template) where I want to replace variables based upon a value in another file (csv). The variables in the template are named %VAR_X_z% The values are in the csv file and X is field 0 of each line and y field 1 and up. Example of the csv: Badidas, 13.00, 12.00, 11.00,... (8 Replies)
Discussion started by: biscayne
8 Replies

5. Shell Programming and Scripting

Help with multiple variables into one row in CSV!

I'm new to shell scripting so I'm guessing I'm just not looking at this from the correct angle as this has to be a common task. What I'm trying to do is take data I've compiled for servers (Name, IPs, HBA WWN's, Storage, etc) and trying to turn that into one row in a CSV file. So File1:... (3 Replies)
Discussion started by: The_Grim_Coder
3 Replies

6. UNIX for Dummies Questions & Answers

Need help combining txt files w/ multiple lines into csv single cell - also need data merge

:confused:Hello -- i just joined the forums. I am a complete noob -- only about 1 week into learning how to program anything... and starting with linux. I am working in Linux terminal. I have a folder with a bunch of txt files. Each file has several lines of html code. I want to combine... (2 Replies)
Discussion started by: jetsetter
2 Replies

7. Shell Programming and Scripting

Extracting data from specific rows and columns from multiple csv files

I have a series of csv files in the following format eg file1 Experiment Name,XYZ_07/28/15, Specimen Name,Specimen_001, Tube Name, Control, Record Date,7/28/2015 14:50, $OP,XYZYZ, GUID,abc, Population,#Events,%Parent All Events,10500, P1,10071,95.9 Early Apoptosis,1113,11.1 Late... (6 Replies)
Discussion started by: pawannoel
6 Replies

8. Shell Programming and Scripting

Read multiple text files and copy data to csv

hi i need to extract lines from multiple files to a csv file. for example, i have these 3 files file1.txt date:29dec1980 caller:91245824255 called:8127766 file2.txt date:11apr2014 caller:9155584558 called:8115478 file3.txt date:25jun2015 caller:445225552 called:8117485 (30 Replies)
Discussion started by: lp.descamps
30 Replies

9. Shell Programming and Scripting

In PErl script: need to read the data one file and generate multiple files based on the data

We have the data looks like below in a log file. I want to generat files based on the string between two hash(#) symbol like below Source: #ext1#test1.tale2 drop #ext1#test11.tale21 drop #ext1#test123.tale21 drop #ext2#test1.tale21 drop #ext2#test12.tale21 drop #ext3#test11.tale21 drop... (5 Replies)
Discussion started by: Sanjeev G
5 Replies

10. UNIX for Beginners Questions & Answers

Export Oracle multiple tables to multiple csv files using UNIX shell scripting

Hello All, just wanted to export multiple tables from oracle sql using unix shell script to csv file and the below code is exporting only the first table. Can you please suggest why? or any better idea? export FILE="/abc/autom/file/geo_JOB.csv" Export= `sqlplus -s dev01/password@dEV3... (16 Replies)
Discussion started by: Hope
16 Replies
ftpgroups(4)															      ftpgroups(4)

NAME
ftpgroups - FTP Server enhanced group access file SYNOPSIS
/etc/ftpd/ftpgroups The ftpgroups file contains the enhanced group access information. After login, if the ftpaccess(4) file includes private yes, the user may use the SITE GROUP and SITE GPASS commands to specify an enhanced access group and a password for that group. If the access group name and password are valid, the FTP Server executes setegid(2) to make the user a member of the real group listed in the ftpgroups file. The format for the ftpgroups file is: accessgroup:encrypted_password:real_group_name The fields are defined as follows: accessgroup An arbitrary string of alphanumeric and punctuation characters. encrypted_password The group password encrypted exactly like in /etc/shadow. real_group_name The name of a valid group returned by getgrnam(3C). The privatepw utility is an administrative tool to add, delete and list enhanced access group information in the ftpgroups file. See pri- vatepw(1M). Lines that begin with a # sign are treated as comment lines and are ignored. /etc/ftpd/ftpgroups /etc/ftpd/ftpaccess See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWftpr | +-----------------------------+-----------------------------+ |Interface Stability |External | +-----------------------------+-----------------------------+ in.ftpd(1M), privatepw(1M), setegid(2), getgrnam(3C), ftpaccess(4), group(4), shadow(4), attributes(5) 1 May 2003 ftpgroups(4)
All times are GMT -4. The time now is 07:14 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy