Sponsored Content
Full Discussion: Numbering a Text File
Top Forums Shell Programming and Scripting Numbering a Text File Post 302265559 by manikantants on Monday 8th of December 2008 12:35:54 AM
Old 12-08-2008
Quote:
Originally Posted by omgsomuchppl
Can i store the contents of the file into a varaible and still be able to delete blank lines? Thats what i've been trying
In that case just modify your script to validate the string.

line_no=1
while read each_line
do
if [ ! -z $each_line ]
then
line_no=`expr $line_no + 1`
echo "$line_no $each_line"
fi
done < input_file > output_file
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Numbering!

Just a shot question... how to make 1,2,3,...999 into the form of 001,002,003....999 (3 digits) Thanks.... (9 Replies)
Discussion started by: biglemon
9 Replies

2. Shell Programming and Scripting

Numbering lines in a file

Hi all, I need to number the lines in a file. I tried using "set nu" in the vi editor, but it is only temporary. Can anyone help me please. Thanx in advance. MK (4 Replies)
Discussion started by: minazk
4 Replies

3. Windows & DOS: Issues & Discussions

Numbering lines in a file

Hi all, I need to number the lines in a file. I tried using "set nu" in the vi editor, but it is only temporary. Can anyone help me please. Thanx in advance. MK (1 Reply)
Discussion started by: minazk
1 Replies

4. 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

5. UNIX for Dummies Questions & Answers

Ghostscript output file numbering?

I am using ghostscript to convert a multi-page pdf file to individual jpg files. I am wondering if there is a way to get ghostscript to start numbering the output jpg files from zero? What i am trying to convey is that it starts naming my files from page_001.jpg, page_002.jpg, etc., and would like... (0 Replies)
Discussion started by: RacerX
0 Replies

6. Shell Programming and Scripting

help with numbering a file

Hi, All I need to do is number a file. The file looks like this > JJJJJJJJJJJJJJJJJJJJJ > JKJKJKKKKKKJJJ > MMMMYKKKJKKK what I want to do is number it so that theres a numerical value beside the >. >1 JJJJJJJJJJJJJJJJJJJJJ >2 JKJKJKKKKKKJJJ (2 Replies)
Discussion started by: kylle345
2 Replies

7. Shell Programming and Scripting

Numbering file's lines

hey a file called test : Code: hey1 hey2 hey3 ........ how to : Code: 1.hey1 2.hey2 3.hey3 .......... (3 Replies)
Discussion started by: eawedat
3 Replies

8. UNIX for Dummies Questions & Answers

numbering lines in a file

if we execute :set nu in vi mode, it displays the line numbers. so how to make this permanently in a file. Whenever i execute cat , the line numbers should be there. please help me. thanks (4 Replies)
Discussion started by: pandeesh
4 Replies

9. Shell Programming and Scripting

awk changing numbering in output file

The below awk is supposed filter $8 of example.txt using the each line in gene.txt. I think it is but why is it renumbering the 1,2,3 in $1 to 28,29,394? I have attached the data as it is large, example.txt is the file to be searched, gene.txt has the lines to match, and filtered.txt is the current... (2 Replies)
Discussion started by: cmccabe
2 Replies

10. Shell Programming and Scripting

Match text to lines in a file, iterate backwards until text or text substring matches, print to file

hi all, trying this using shell/bash with sed/awk/grep I have two files, one containing one column, the other containing multiple columns (comma delimited). file1.txt abc12345 def12345 ghi54321 ... file2.txt abc1,text1,texta abc,text2,textb def123,text3,textc gh,text4,textd... (6 Replies)
Discussion started by: shogun1970
6 Replies
CSPLIT(1P)						     POSIX Programmer's Manual							CSPLIT(1P)

PROLOG
This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface may differ (consult the correspond- ing Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux. NAME
csplit -- split files based on context SYNOPSIS
csplit [-ks] [-f prefix] [-n number] file arg... DESCRIPTION
The csplit utility shall read the file named by the file operand, write all or part of that file into other files as directed by the arg operands, and write the sizes of the files. OPTIONS
The csplit utility shall conform to the Base Definitions volume of POSIX.1-2008, Section 12.2, Utility Syntax Guidelines. The following options shall be supported: -f prefix Name the created files prefix00, prefix01, ..., prefixn. The default is xx00 ... xxn. If the prefix argument would create a filename exceeding {NAME_MAX} bytes, an error shall result, csplit shall exit with a diagnostic message, and no files shall be created. -k Leave previously created files intact. By default, csplit shall remove created files if an error occurs. -n number Use number decimal digits to form filenames for the file pieces. The default shall be 2. -s Suppress the output of file size messages. OPERANDS
The following operands shall be supported: file The pathname of a text file to be split. If file is '-', the standard input shall be used. Each arg operand can be one of the following: /rexp/[offset] A file shall be created using the content of the lines from the current line up to, but not including, the line that results from the evaluation of the regular expression with offset, if any, applied. The regular expression rexp shall follow the rules for basic regular expressions described in the Base Definitions volume of POSIX.1-2008, Section 9.3, Basic Regular Expressions. The application shall use the sequence "/" to specify a <slash> character within the rexp. The optional offset shall be a positive or negative integer value representing a number of lines. A positive integer value can be preceded by '+'. If the selection of lines from an offset expression of this type would create a file with zero lines, or one with greater than the number of lines left in the input file, the results are unspecified. After the section is created, the current line shall be set to the line that results from the evaluation of the regular expression with any offset applied. If the current line is the first line in the file and a regular expression operation has not yet been performed, the pattern match of rexp shall be applied from the current line to the end of the file. Otherwise, the pattern match of rexp shall be applied from the line following the current line to the end of the file. %rexp%[offset] Equivalent to /rexp/[offset], except that no file shall be created for the selected section of the input file. The application shall use the sequence "\%" to specify a <percent-sign> character within the rexp. line_no Create a file from the current line up to (but not including) the line number line_no. Lines in the file shall be numbered starting at one. The current line becomes line_no. {num} Repeat operand. This operand can follow any of the operands described previously. If it follows a rexp type operand, that operand shall be applied num more times. If it follows a line_no operand, the file shall be split every line_no lines, num times, from that point. An error shall be reported if an operand does not reference a line between the current position and the end of the file. STDIN
See the INPUT FILES section. INPUT FILES
The input file shall be a text file. ENVIRONMENT VARIABLES
The following environment variables shall affect the execution of csplit: LANG Provide a default value for the internationalization variables that are unset or null. (See the Base Definitions volume of POSIX.1-2008, Section 8.2, Internationalization Variables for the precedence of internationalization variables used to determine the values of locale categories.) LC_ALL If set to a non-empty string value, override the values of all the other internationalization variables. LC_COLLATE Determine the locale for the behavior of ranges, equivalence classes, and multi-character collating elements within regular expressions. LC_CTYPE Determine the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multi-byte characters in arguments and input files) and the behavior of character classes within regular expressions. LC_MESSAGES Determine the locale that should be used to affect the format and contents of diagnostic messages written to standard error. NLSPATH Determine the location of message catalogs for the processing of LC_MESSAGES. ASYNCHRONOUS EVENTS
If the -k option is specified, created files shall be retained. Otherwise, the default action occurs. STDOUT
Unless the -s option is used, the standard output shall consist of one line per file created, with a format as follows: "%d ", <file size in bytes> STDERR
The standard error shall be used only for diagnostic messages. OUTPUT FILES
The output files shall contain portions of the original input file; otherwise, unchanged. EXTENDED DESCRIPTION
None. EXIT STATUS
The following exit values shall be returned: 0 Successful completion. >0 An error occurred. CONSEQUENCES OF ERRORS
By default, created files shall be removed if an error occurs. When the -k option is specified, created files shall not be removed if an error occurs. The following sections are informative. APPLICATION USAGE
None. EXAMPLES
1. This example creates four files, cobol00 ... cobol03: csplit -f cobol file '/procedure division/' /par5./ /par16./ After editing the split files, they can be recombined as follows: cat cobol0[0-3] > file Note that this example overwrites the original file. 2. This example would split the file after the first 99 lines, and every 100 lines thereafter, up to 9999 lines; this is because lines in the file are numbered from 1 rather than zero, for historical reasons: csplit -k file 100 {99} 3. Assuming that prog.c follows the C-language coding convention of ending routines with a '}' at the beginning of the line, this example creates a file containing each separate C routine (up to 21) in prog.c: csplit -k prog.c '%main(%' '/^}/+1' {20} RATIONALE
The -n option was added to extend the range of filenames that could be handled. Consideration was given to adding a -a flag to use the alphabetic filename generation used by the historical split utility, but the func- tionality added by the -n option was deemed to make alphabetic naming unnecessary. FUTURE DIRECTIONS
None. SEE ALSO
sed, split The Base Definitions volume of POSIX.1-2008, Chapter 8, Environment Variables, Section 9.3, Basic Regular Expressions, Section 12.2, Util- ity Syntax Guidelines COPYRIGHT
Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2013 Edition, Standard for Information Technol- ogy -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 7, Copyright (C) 2013 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. (This is POSIX.1-2008 with the 2013 Technical Corrigendum 1 applied.) In the event of any discrepancy between this version and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Stan- dard is the referee document. The original Standard can be obtained online at http://www.unix.org/online.html . Any typographical or formatting errors that appear in this page are most likely to have been introduced during the conversion of the source files to man page format. To report such errors, see https://www.kernel.org/doc/man-pages/reporting_bugs.html . IEEE
/The Open Group 2013 CSPLIT(1P)
All times are GMT -4. The time now is 04:13 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy