04-14-2008
sed or awk to convert text files with recurring headings to rows and colum
I have many text file reports generated by a Information Assurance tool that I need to get into a .CSV format or Excel tab delimited format. I want to use sed or awk to grab all the information in the sample text file below and create column headings:Risk ID, Risk Level, Category, Description, How To Fix, Affected Machines, Then I want to populate the cells(or fields?) with the data seen below. I think I can do this by grabbing everything between 2 of the heading strings, e.g: grab everything between Risk Level & Category: and add that to Risk Level field, then grab everything between Category and Description and add to Category value in Category column.
Problem ID: 3454
Risk Level: Low
Category: Accounts
Description: Local user account does not require a password.
How To Fix: To disable the allowance of blank password, change the following registry key: HKLM:System\CurrentControlSet\Control\Lsa\LimitBlankPasswordUse Set value to DWORD=1
Affected Machines: Student001 student0057 student6745.
Problem ID: 433
Risk Level: Med
Category: DoS
Description: Microsoft SynAttackProtect
How To Fix: Set: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\SynAttackProtect registry value to 1 (better protection) or 2 (best protection).
Affected Machines: Student021 student0032 student67.
Problem ID: 3454
Risk Level: High
Category: Miscellaneous
Description: Apple QuickTime 7.1.6 Update - Windows
How To Fix: Update to version 7.1.6 or later of QuickTime.
Affected Machines: Student011 student00907 student45.
Here is where I need to be:
![Image](http://img239.imageshack.us/img239/179/sedawkgr6.th.gif)
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi Friends
I am facing some problem in extract the lines between two fixed lines
for examplemy text file look like ...
--------
line 1
line 2
line 3
---------
line 4
line 5
--------
line 6
line 7
line 8
line 9
line 10
---------
now i want the data between "-------" these... (4 Replies)
Discussion started by: sushantnirwan
4 Replies
2. Shell Programming and Scripting
Hello,
I'm rather new to the world of regular expressions and sed, though am excited by its possibilities. I have a particular task I'd like to achieve, and have googled the topic quite a bit. However, having found some codes that perform a task very similar to what I'd like to do, I can't for... (2 Replies)
Discussion started by: redseventyseven
2 Replies
3. Shell Programming and Scripting
Hello,
I've the follwing text:
gfdgfg
--------------------------------
dfgfdgdfg
fdgfdgfdgdgf
fdgf
------------------------------
f
g
gdgf
a constant string that i know
---------------------------------------------
data I want to have data I want to have
data I want to have data I... (16 Replies)
Discussion started by: eric_
16 Replies
4. UNIX for Dummies Questions & Answers
Hi all,
I have two files:
file one (9 rows, 3 columns):
A 1 x1
B 2 f1
C 3 f3
D 4 u5
E 5 l9
F 6 h6
G 7 g4
H 8 r4
I 9 s2
file two (4 rows, 1 column):
A
B (2 Replies)
Discussion started by: anjas
2 Replies
5. UNIX for Dummies Questions & Answers
Hi , I am struck while coding AWK script. Need your help to convert rows into columns. I should copy only those rows which are marked to Y in a file and ignore N rows. Please help me find a solution.
input file
1|abc|Y
2|cdf|Y
3|efg|N
4|xyz|Y
my output should be something like this... (2 Replies)
Discussion started by: rashmisb
2 Replies
6. Shell Programming and Scripting
hi friends,
i am able to parse cvs diff file using bit of cut and grep commands to produce following output in text file
'''cvs-diff.txt'''
Package-Name = dev-freetype.
Old-Version = 2.4.8
New-Version = 2.4.10
Patches-removed = freetype-2.4.8-cross-compile.patch... (2 Replies)
Discussion started by: alexzander18
2 Replies
7. UNIX for Dummies Questions & Answers
Hi guys!
I use AWK commands under GAMS to predispose the data files to be read by GAMS.
I have a file which contains groups of data I need. Unfortunately I have the data spread in 3 rows for each subject.
Here's an example (the file is really long)
1 0 2.0956 100.00 250.00 100.00 2.0956... (4 Replies)
Discussion started by: Pintug
4 Replies
8. Shell Programming and Scripting
Hello Friends!
I would like to help the masters ... I have a file with the entry below and would like a script for that output:
Input file:
001 1 01-20152142711532-24S 1637909825/05/2015BAHIA SERVICOS R F, ... (1 Reply)
Discussion started by: He2
1 Replies
9. Shell Programming and Scripting
Hello
I've four fields . They are First Name, Last Name, Age, Country. So when I run a Unix command, I get below output with these fields comes every time in different order as you can see. Some times first name is the first row and other time last name is first row in the output and etc etc..... (9 Replies)
Discussion started by: rprpr
9 Replies
10. UNIX for Beginners Questions & Answers
Hello Everyone,
I have many files like so:
file1.txt
file2.txt
file3.txt
Within each file I have many lines of random text separated by commas like so:
abcAAA,123,defAA,456777,ghiA,789
jklB,101,mnoBBB,11211,pqrB,13111
stuCC,415,vwxCCCC,161,yzaC,718
I am trying to use SED or AWK to... (4 Replies)
Discussion started by: D3U5X
4 Replies
file-pr(8) GNATS Internal Utilities file-pr(8)
NAME
file-pr - files incoming problem reports in GNATS database
SYNOPSIS
file-pr [ -f file | --file=file ] [ -h | --help ]
[ -V | --version ] [ -H host | --host=host ]
[ -P port | --port=port ] [ -v user | --user=user ]
[ -w password | --passwd=password ]
[ -d databasename | --database=databasename ]
DESCRIPTION
file-pr files incoming Problem Reports in the GNATS database, sends acknowledgments to approriate parties and logs database activity.
file-pr assigns the Problem Report an identification number and then files it in the GNATS database either under the category specified in
the Category field of the PR, or under the default category if the Category field is nonexistent or contains an invalid category name.
For the default GNATS configuration, the person responsible for that category and the person responsible for the submitter site where the
PR originated receive a copy of the PR in its entirety. Optionally, the originator of the PR receives an acknowledgment that the PR ar-
rived and was filed
OPTIONS
-f file, --filename=file
Accept file as input; if this option is not present, standard input is used.
-h, --help
Display usage summary for file-pr.
-V, --version
Display version number for file-pr.
-d, --database
Specifies the database to which the PR is to be submitted. If no database is specified, the database named default is assumed.
This option overrides the database specified in the GNATSDB environment variable.
GNATS network options:
-H, --host
Hostname of the GNATS server.
-P, --port
The port that the GNATS server runs on.
-v, --username
Username used to log into the GNATS server.
-w, --passwd
Password used to log into the GNATS server.
ENVIRONMENT VARIABLES
The GNATSDB environment variable is used to determine which database to use. For a local database, it contains the name of the database to
access.
For network access via gnatsd, it contains a colon-separated list of strings that describe the remote database, in the form
server:port:databasename:username:password
Any of the fields may be omitted, but at least one colon must appear; otherwise, the value is assumed to be the name of a local database.
If GNATSDB is not set, it is assumed that the database is local and that its name is default.
SEE ALSO
Keeping Track: Managing Messages With GNATS (also installed as the GNU Info file gnats.info)
databases(5), dbconfig(5), delete-pr(8), edit-pr(1) file-pr(8), gen-index(8), gnats(7), gnatsd(8), mkcat(8), mkdb(8), pr-edit(8), query-
pr(1), queue-pr(8), send-pr(1).
COPYING
Copyright (c) 1993, 1999, 2003, Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are
preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in translations approved by the Free Software Foundation instead of in the
original English.
GNATS
August 2003 file-pr(8)