Sponsored Content
Top Forums Shell Programming and Scripting Cat'ing a multiple line file to one line Post 302114524 by cfajohnson on Monday 16th of April 2007 08:50:01 PM
Old 04-16-2007
Quote:
Originally Posted by djsal
I am writing a script that is running a loop on one file to obtain records from another file.

Using egrep, I am finding matching records in file b, then outputing feilds of both into another file.

****************************
filea=this.txt
fileb=that.txt

cat $filea | while read line
do
egrep ^${line} > tmp.$$
COUNT=`wc -l tmp.$$`
if [ -s tmp.$$ ]
then
echo "${line}`cat tmp.$$`" >> output.txt
fi
done
******************************
In the instance that tmp.$$ is 2 or more lines, how do I get all the lines on the same line? I know by looking at the example above, there are better ways to do it, however, I have to output different things based on the number of results in $COUNT. Thanks in advance!

Code:
## untested
IFS='
'
set -f
while read -r line
do
   result=$( egrep "^${line}" "$fileb" )
   set -- $result
   COUNT=$#
   {
      printf "%s " $result
      echo
    } >> "$outfile"
done < "$filea"

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

cat file1 read line-per-line then grep -A 15 lines down in fileb

STEP 1 # Set variable FILE=/tmp/mainfile SEARCHFILE =/tmp/searchfile # THIS IS THE MAIN FILE. cat /tmp/mainfile Interface Ethernet0/0 "outside", is up, line protocol is up Hardware is i82546GB rev03, BW 100 Mbps Full-Duplex(Full-duplex), 100 Mbps(100 Mbps) MAC address... (6 Replies)
Discussion started by: irongeekio
6 Replies

2. Shell Programming and Scripting

cat in the command line doesn't match cat in the script

Hello, So I sorted my file as I was supposed to: sort -n -r -k 2 -k 1 file1 | uniq > file2 and when I wrote > cat file2 in the command line, I got what I was expecting, but in the script itself ... sort -n -r -k 2 -k 1 averages | uniq > temp cat file2 It wrote a whole... (21 Replies)
Discussion started by: shira
21 Replies

3. Shell Programming and Scripting

KSH: Reading a file line by line into multiple arrays

Hi - I have a file that contains data in this format:- #comment value1 value2 value3 #comment value4 value5 value6 value7 #comment value8 value9 I need to read value1, value2 and value3 into one array, value4 value5 value6 and value7 into another array and value8 and value9 into a 3rd... (2 Replies)
Discussion started by: sniper57
2 Replies

4. Shell Programming and Scripting

bash: cat multiple files together except first line?

Hopefully the title summarized what I need help with. I have multiple files that I would like to concatenate in bash. ie: cat file1 file2 file3 > bigfile except I do not want to include the first line from each file (). Any help? Thanks. (6 Replies)
Discussion started by: sanimfj
6 Replies

5. Shell Programming and Scripting

split a line of a file and cat a file with another

Hi, I have two files one.txt laptop boy apple two.txt unix linux OS openS I want to split one.txt into one line each and concatenate it with the two.txt output files onea.txt laptop (4 Replies)
Discussion started by: avatar_007
4 Replies

6. Shell Programming and Scripting

'for LINE in $(cat file)' breaking at spaces, not just newlines

Hello. I'm making a (hopefully) simple shell script xml parser that outputs a file I can grep for information. I am writing it because I have yet to find a command line utility that can do this. If you know of one, please just stop now and tell me about it. Even better would be one I can input... (10 Replies)
Discussion started by: natedawg1013
10 Replies

7. Shell Programming and Scripting

Shell script to read multiple options from file, line by line

Hi all I have spent half a day trying to create a shell script which reads a configuration file on a line by line basis. The idea of the file is that each will contain server information, such as IP address and various port numbers. The line could also be blank (The file is user created). Here... (1 Reply)
Discussion started by: haggismn
1 Replies

8. AIX

Script to cat and dd last line!!! of each file

hi Guys, Am new to this awesome forum, and yea i need some help here asap thnx :) i have a directory with over 34000 text files, i need a script that will delete the last line of each of this file without me necessary opening the files. illustration:- file1 200 records file2 130 records... (5 Replies)
Discussion started by: eetang
5 Replies

9. Shell Programming and Scripting

Search words in multiple file line by line

Hi All I have to search servers name say like 1000+ "unique names" line by line in child.txt files in another file that is a master file where all server present say "master.txt",if child.txt's server name matches with master files then it print yes else no with server name. (4 Replies)
Discussion started by: netdbaind
4 Replies

10. Shell Programming and Scripting

Perl command line option '-n','-p' and multiple files: can it know a file name of a printed line?

I am looking for help in processing of those options: '-n' or '-p' I understand what they do and how to use them. But, I would like to use them with more than one file (and without any shell-loop; loading the 'perl' once.) I did try it and -n works on 2 files. Question is: - is it possible to... (6 Replies)
Discussion started by: alex_5161
6 Replies
acct(1M)																  acct(1M)

NAME
acct: acctdisk, acctdusg, accton, acctwtmp, closewtmp, utmp2wtmp - overview of accounting and miscellaneous accounting commands SYNOPSIS
file] file] [file] reason DESCRIPTION
Accounting software is structured as a set of tools (consisting of both C programs and shell procedures) that can be used to build account- ing systems. The shell procedures, described in acctsh(1M), are built on top of the C programs. Connect time accounting is handled by various programs that write records into the The programs described in acctcon(1M) convert this file into session and charging records which are then summarized by (see acctmerg(1M)). Process accounting is performed by the HP-UX system kernel. Upon termination of a process, one record per process is written to a file (normally The programs in acctprc(1M) summarize this data for charging purposes; is used to summarize command usage (see acctcms(1M)). Current process data can be examined using (see acctcom(1M)). Process accounting and connect time accounting (or any accounting records in the format described in acct(4)) can be merged and summarized into total accounting records by (see the format in acct(4)). is used to format any or all accounting records (see acctsh(1M)). reads lines that contain user ID, login name, and number of disk blocks, and converts them to total accounting records that can be merged with other accounting records. reads its standard input (usually from and computes disk resource consumption (including indirect blocks) by login. Only files found under login directories (as determined from the password file) are accounted for. All files under a login directory are assumed to belong to that user regardless of actual owner. If is given, records consisting of those file names for which charges no one are placed in file (a potential source for finding users trying to avoid disk charges). If is given, file is the name of the password file. This option is not needed if the password file is (See diskusg(1M) for more details.) turns process accounting off if the optional file argument is omitted. If file is given, it must be the name of an existing file, to which the kernel appends process accounting records (see acct(2) and acct(4)). writes a utmp record to its standard output if the option is not used. If the option is used, writes a record to The record contains the current time and a string of characters that describe the reason for writing the record. A record type of is assigned (see utmp(4) and utmps(4)). The string argument reason must be 11 or fewer characters, numbers, or spaces if option is not used. Otherwise, it must be 63 or fewer characters, numbers, or spaces. For example, the following are suggestions for use in reboot and shutdown procedures, respec- tively: writes a record, for each user currently logged in, to the file This program is invoked by runacct to close the existing file before creat- ing a new one. writes a record, for each user currently logged in, to the file This program is invoked by runacct to initialize the newly created file. FILES
Holds all accounting commands listed in section(1M) of this manual. Current process accounting file. Used for converting login name to user ID Login/logoff history file. New login/logoff history database. SEE ALSO
acctcms(1M), acctcom(1M), acctcon(1M), acctmerg(1M), acctprc(1M), acctsh(1M), diskusg(1M), fwtmp(1M), runacct(1M), acct(2), acct(4), utmp(4). utmps(4), wtmps(4). STANDARDS CONFORMANCE
acct(1M)
All times are GMT -4. The time now is 05:34 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy