Sponsored Content
Top Forums Shell Programming and Scripting sed or awk help - line numbering w/ different start value Post 302295311 by camwheel on Saturday 7th of March 2009 10:11:46 AM
Old 03-07-2009
@radoulov I have a master file, master.txt, with about 50 lines like the following:

1|True|12094856|12094856|Test|
2|True|12209485|12209485|Production|
3|True|13056733|13056773|Test|
...
56|True|38077408|38077408|Production
I also have 3 other, shorter files that I want appended to the master file, continuing the count in the first column where it ends in the master page, so tmpFile1 has this content:

1|True|87849057|87849057|Test|
2|False|103994858|103994858|Production|
3|True|88345576|88345576|Production|
...

Now the master file should have this when finished:

1|True|12094856|12094856|Test|
2|True|12209485|12209485|Production|
3|True|13056733|13056773|Test|
...
56|True|38077408|38077408|Production
57|True|87849057|87849057|Test|
58|False|103994858|103994858|Production|
59|True|88345576|88345576|Production|
...

@TinWalrus I was thinking about the problem this morning, and came to a similar conclusion (though I didn't come up with the code,as awk is completely new to me, so thank you for that). It isn'[t quite the elegant answer I was looking for, but barring a better solution I can make do with that. The issue is that I will be doing this again from time to time, and would prefer appending the new files to the master instead of renumbering them all the time, so the trick I can't figure out is how to tell awk (or sed) to start numbering at a different value than one.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

AWK Multi-Line Records Numbering Problem

I have a set of files of multi-line records with the records separated by a blank line. I needed to add a record number to the front of each line followed by a colon and did the following: awk 'BEGIN {FS = "\n"; RS = ""}{for (i=1; i<=NF; i++)print NR,":",$i}' ~/Desktop/data98-1-25.txt >... (3 Replies)
Discussion started by: RacerX
3 Replies

2. Shell Programming and Scripting

sed remove last 10 characters of a line start from 3rd line

hello experts, I need a sed command that remove last 10 characters of a line start from 3rd line. any suggestions? Thanks you (7 Replies)
Discussion started by: minifish
7 Replies

3. Shell Programming and Scripting

numbering each line in a text file

I have a simple text file. I want to number each line in that file . for example: My text file is unix my file test My output should be 1 unix 2 my file 3 test (5 Replies)
Discussion started by: pitagi
5 Replies

4. UNIX for Advanced & Expert Users

Sed - add text to start of line if 1st char anything but space

Problem: I have a lot of files, the files first line should always have 4 spaces before any text. Occasionally some of the files will miss the leading spaces and it's a problem. This is only in the first line. So if there are 4 spaces then text, do nothing. If there are not 4 spaces, add 4... (2 Replies)
Discussion started by: Vryali
2 Replies

5. Shell Programming and Scripting

SED Question: Search and Replace start of line to matching pattern

Hi guys, got a problem here with sed on the command line. If i have a string as below: online xx:wer:xcv: sdf:/asdf/http:https-asdfd How can i match the pattern "http:" and replace the start of the string to the pattern with null? I tried the following but it doesn't work: ... (3 Replies)
Discussion started by: DrivesMeCrazy
3 Replies

6. Shell Programming and Scripting

sed replace values of column with ordered numbering

Hello, I am trying to write a shell script that will create a gnuplot file. My main problem is that I have a data file with two columns: 1.05929120E+09 5.0000701214792 1.05930096E+09 5.00006386985764 1.05930584E+09 5.00019465404908 1.05931072E+09 5.00031960589719 ... (2 Replies)
Discussion started by: pau
2 Replies

7. Shell Programming and Scripting

start line numbering with arbitrary number?

Hi, I want to do the following: Extract some lines from different files and copy them into one file, with the first column being the line number. I do this with cat file1 file2 file3 |grep 'xxx' |nl > output.file Works fine. But if I want to add data of interest from a fourth file to the... (2 Replies)
Discussion started by: paracetamol
2 Replies

8. Shell Programming and Scripting

awk to count start and end keyword in a line

Hello fellow awkers and seders: need to figure out a way to ensure a software deployment has completed by checking its trace file in which I can store the deployment results as follows: echo $testvar ===== Summary - Deploy Result - Start ===== ===== Summary - Deploy Result - End =====... (1 Reply)
Discussion started by: ux4me
1 Replies

9. Shell Programming and Scripting

awk use sequential line numbering in output

The awk below produces an output with the original header and only the matching lines (which is good), but the output where the original line numbering in the match found on is used. I can not figure out how to sequentially number the output instead of using the original. I did try to add... (2 Replies)
Discussion started by: cmccabe
2 Replies

10. Shell Programming and Scripting

Printing string from last field of the nth line of file to start (or end) of each line (awk I think)

My file (the output of an experiment) starts off looking like this, _____________________________________________________________ Subjects incorporated to date: 001 Data file started on machine PKSHS260-05CP ********************************************************************** Subject 1,... (9 Replies)
Discussion started by: samonl
9 Replies
TEST(1) 						      General Commands Manual							   TEST(1)

NAME
test - set status according to condition SYNOPSIS
test expr DESCRIPTION
Test evaluates the expression expr. If the value is true the exit status is null; otherwise the exit status is non-null. If there are no arguments the exit status is non-null. The following primitives are used to construct expr. -r file True if the file exists (is accessible) and is readable. -w file True if the file exists and is writable. -x file True if the file exists and has execute permission. -e file True if the file exists. -f file True if the file exists and is a plain file. -d file True if the file exists and is a directory. -s file True if the file exists and has a size greater than zero. -t fildes True if the open file whose file descriptor number is fildes (1 by default) is the same file as /dev/cons. s1 = s2 True if the strings s1 and s2 are identical. s1 != s2 True if the strings s1 and s2 are not identical. s1 True if s1 is not the null string. (Deprecated.) -n s1 True if the length of string s1 is non-zero. -z s1 True if the length of string s1 is zero. n1 -eq n2 True if the integers n1 and n2 are arithmetically equal. Any of the comparisons -ne, -gt, -ge, -lt, or -le may be used in place of -eq. The (nonstandard) construct -l string, meaning the length of string, may be used in place of an integer. These primaries may be combined with the following operators: ! unary negation operator -o binary or operator -a binary and operator; higher precedence than -o ( expr ) parentheses for grouping. The primitives -b, -u, -g, and -s return false; they are recognized for compatibility with POSIX. Notice that all the operators and flags are separate arguments to test. Notice also that parentheses and equal signs are meaningful to rc and must be enclosed in quotes. EXAMPLES
Test is a dubious way to check for specific character strings: it uses a process to do what an rc(1) match or switch statement can do. The first example is not only inefficient but wrong, because test understands the purported string "-c" as an option. if (test $1 '=' "-c") echo OK # wrong! A better way is if (~ $1 -c) echo OK Test whether is in the current directory. test -f abc -o -d abc SOURCE
/sys/src/cmd/test.c SEE ALSO
rc(1) TEST(1)
All times are GMT -4. The time now is 10:24 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy