Sponsored Content
Top Forums UNIX for Beginners Questions & Answers UNIX replacing and incrementing number Post 303037490 by Don Cragun on Saturday 3rd of August 2019 01:32:17 AM
Old 08-03-2019
Quote:
Originally Posted by chamajid
Hi

I am unix newbie looking for a unix bash script that can make it easier to do my code work. we have a code number for each code block that we want to incrementally assign. We have 10000 of these and it is very laborious to do this one by one.

so what we want is start from the top of the file , look for '0000' or text below whatver number is in it. start Update with 0001 and next wherever there is number like '0000' and also has '.001' int he same line then the number repeats. .001 does not change. Example below.

Code:
l_code_number := (l_src||'0011')::num

l_code_number := (l_src||'0012')::num

l_code_number := (l_src||'0012'||'.001')::num

l_code_number := (l_src||'0013')::num

l_code_number := (l_src||'0014')::num

l_code_number := (l_src||'0014'||'.001')::num
.
..
...

If the number is more 9999 thats ok. but till 9999 it should have pad of 4 zeros 0000. Please help. no perl please. So when ever I run the script to a file, the output should have the numbers replaced inside the file or to the output file.
I am afraid that from your description I have no idea what you are trying to do.

You show us sample input that has absolutely no occurrences of the string '0000' and you do not show us the output that you want to be produced from that input.

You say that changed numbers less than 9999 should have a pad of four zeroes, but none of your samples do that. They are padded to four digits, but none of them have four leading zeroes as requested.

Please clearly explain what you are trying to do, show us sample input that shows us the various things you are trying to do (in CODE tags), and show us the corresponding output that you hope to produce from that sample input.

If you have a bunch of input files, is each file supposed to modified to change '0000' to sequential values starting at one or are the numbers to be assigned sequentially such that the same number is never assigned in more than one output file?

Where are the files that are to be used as input files? If there are files in that directory that are not to be modified, how is your script supposed to know which files are to be processed? Where are the output files to be placed?
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

perl + array and incrementing number

morning guys and gals, I am haveing a problem, a friend helped me out with this script but i dont know how to add incrementing number for each movie in movie.list. this is what i have so far. any assistance would be great. I have removed the GT and LT symbols so you can see what is going on... (5 Replies)
Discussion started by: Optimus_P
5 Replies

2. Shell Programming and Scripting

Replacing the first 0 with a number

Hi, Appreciate any help in advance ;-) There are some numbers between 0 and 1, 0 not included: .2500, .3333, .5000, .6666, .7500, 1.000 How to replace the first 0 ( after the dot ) with a number, say, if the number is 3: .2500 will be .2530 .5000 will be .5300 .7500 will be .7530 ... (3 Replies)
Discussion started by: wanttolearn
3 Replies

3. Shell Programming and Scripting

Replacing word and Incrementing

Hi I'm having difficulty in writing a script with searching a specified word using sed and replaces that word with numbers that is incremented I tried this: #!/bin/sh awk '{ for (i=2010; i<=NF; i++) sed 's/TBA/$i; }' filename.txt > outputfile.txt but it doesn't work. here is my desired... (1 Reply)
Discussion started by: sexyTrojan
1 Replies

4. Shell Programming and Scripting

Unix c-shell - replacing/incrementing values in columns?

2 21 1 12 3 123 4 1234 6 49 0 49 33 212 I need to replace/increment all the values in the 2nd column that correspond to 0 in the first column. so for 0 49 i would get 0 50 this can be done through: paste num4.txt... (14 Replies)
Discussion started by: audrey_flox
14 Replies

5. Shell Programming and Scripting

Replacing Port number Using Sed

Hi Im trying to replace http port value.However for some reason its not working.Can you guys take a look and hit me with suggestions please.Your help is much appreciated. echo "Enter Value" read ans sed -i "s/http-port = 80 /http-port = $ans/g" demo Note:demo is the filename ... (6 Replies)
Discussion started by: coolkid
6 Replies

6. Shell Programming and Scripting

Incrementing number in bash

I have the following code and getting the error ./raytrac.bash: line 231: ((: 0++: syntax error: operand expected (error token is "+") iarg = 0 iarg=0 narg=$# # Number of arguments passed. echo "narg = $narg" argsArr=("$@") # Set... (1 Reply)
Discussion started by: kristinu
1 Replies

7. UNIX for Dummies Questions & Answers

Incrementing the New File Version Number

Hello All, In the below script i am trying to check and list the file names, get the last file with highest version number and then increment the version number when i create another file. Example: file1 is COBANK_v1.xml and file2 i want to put it as COBANK_v2.xml, to achieve this i am using awk... (15 Replies)
Discussion started by: Ariean
15 Replies

8. Shell Programming and Scripting

Replacing string by incrementing number

Dear all Say I have a file as ! TICKET NBR : 234 !GSI : 102 ! 3100.2.112.1 11/06/2013 15:56:29 ! 3100.2.22.3 98 ! 3100.2.134.2 8 ! ! TICKET NBR : 1809 ! GSI : 102 ! 3100.2.112.1 11/06/2013 16:00:45 ! 3100.2.22.3 65 ! 3100.2.134.2 3 ! ! TICKET NBR : 587 ! GSI : 102 ! 3100.2.112.1... (3 Replies)
Discussion started by: OTNA
3 Replies

9. Shell Programming and Scripting

Incrementing parts of ten digits number by parts

I have number in file which contains date and serial number: 2013101000. The last two digits are serial number (00). So maximum of serial number is 100. After reaching 100 it becomes 00 with incrementing 10 which is day with max 31. after reaching 31 it becomes 00 and increments 10... (31 Replies)
Discussion started by: Natalie
31 Replies

10. UNIX for Beginners Questions & Answers

Incrementing the New File Version Number

Hi, This is my first post here. I am using cygwin on Windows 7. I am starting with a data file with filename "name_1.ext", like "20180831_snapgenotypes_1.csv". The "_1" before ".ext" is a version number. Integers (0-99) are sufficient. They don't have to be like "1.0.0". The filename may... (2 Replies)
Discussion started by: minimalist
2 Replies
postdmd(1)							   User Commands							postdmd(1)

NAME
postdmd - PostScript translator for DMD bitmap files SYNOPSIS
postdmd [-b num] [-c num] [-f] [-m num] [-n num] [-o list] [-p mode] [-x num] [-y num] [file...] /usr/lib/lp/postscript/postdmd DESCRIPTION
postdmd translates DMD bitmap files, as produced by dmdps, or files written in the Ninth Edition bitfile(9.5) format into PostScript and writes the results on the standard output. If no files are specified, or if - is one of the input files, the standard input is read. OPTIONS
-b num Pack the bitmap in the output file using num byte patterns. A value of 0 turns off all packing of the output file. By default, num is 6. -c num Print num copies of each page. By default only one copy is printed. -f Flip the sense of the bits in files before printing the bitmaps. -m num Magnify each logical page by the factor num. Pages are scaled uniformly about the origin, which by default is located at the cen- ter of each page. The default magnification is 1.0. -n num Print num logical pages on each piece of paper, where num can be any positive integer. By default num is set to 1. -o list Print pages whose numbers are given in the comma-separated list. The list contains single numbers N and ranges N1 - N2. A missing N1 means the lowest numbered page, a missing N2 means the highest. The page range is an expression of logical pages rather than physical sheets of paper. For example, if you are printing two logical pages to a sheet, and you specified a range of 4, then two sheets of paper would print, containing four page layouts. If you specified a page range of 3-4, when requesting two logical pages to a sheet; then only page 3 and page 4 layouts would print, and they would appear on one physical sheet of paper. -p mode Print files in either portrait or landscape mode. Only the first character of mode is significant. The default mode is portrait. -x num Translate the origin num inches along the positive x axis. The default coordinate system has the origin fixed at the center of the page, with positive x to the right and positive y up the page. Positive num moves everything right. The default offset is 0 inches. -y num Translate the origin num inches along the positive y axis. Positive num moves everything up the page. The default offset is 0. Only one bitmap is printed on each logical page, and each of the input files must contain complete descriptions of at least one bitmap. Decreasing the pattern size using the -b option may help throughput on printers with fast processors (such as PS-810s), while increasing the pattern size will often be the right move on older models (such as PS-800s). EXIT STATUS
The following exit values are returned: 0 Successful completion. non-zero An error occurred. FILES
/usr/lib/lp/postscript/forms.ps /usr/lib/lp/postscript/ps.requests ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWpsf | +-----------------------------+-----------------------------+ SEE ALSO
download(1), dpost(1), postdaisy(1), postio(1), postmd(1), postprint(1), postreverse(1), posttek(1), attributes(5) SunOS 5.10 9 Sep 1996 postdmd(1)
All times are GMT -4. The time now is 03:47 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy