Sponsored Content
Top Forums Shell Programming and Scripting Grep command to ignore line starting with hyphen Post 302947552 by Srinraj Rao on Thursday 18th of June 2015 06:40:18 PM
Old 06-18-2015
Grep command to ignore line starting with hyphen

Hi,

I want to read a file line by line and exclude the lines that are beginning with special characters. The below code is working fine except when the line starts with hyphen (-) in the file.

Code:
for TEST in `cat $FILE | grep -E -v '#|/+' | awk '{FS=":"}NF > 0{print $1}'`
do
.
.
done

How should the grep statement be modified to ignore the line starting with hyphen?

Thanks
Srinraj

Last edited by Don Cragun; 06-19-2015 at 02:32 AM.. Reason: Add CODE tags.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

use of hyphen in #! line

In one script i have seen - in #! line can somebody explain the meaning of -(hyphen) here #! /bin/sh - (7 Replies)
Discussion started by: Dhruva
7 Replies

2. Shell Programming and Scripting

add a hyphen every 2 characters of every line

I have a text file like this with hundreds of lines: >cat file1.txt 1027123000 1027124000 1127125000 1128140000 1228143000 > all lines are very similar and have exactly 10 digits. I want to separate the digits by twodigit and hyphens....like so, > 10-27-12-30-00 10-27-12-40-00... (7 Replies)
Discussion started by: ajp7701
7 Replies

3. Shell Programming and Scripting

Grep from a starting line till the end of the file

Hi Folks, I got to know from this forums on how to grep from a particular line say line 6 awk 'NR==6 {print;exit}' But how do i grep from line 6 till the end of the file or command output. Thanks, (3 Replies)
Discussion started by: Mr. Zer0
3 Replies

4. UNIX Desktop Questions & Answers

How to remove text in each line after hyphen?

Hi, I'm trying to do something relatively simple. I have a txt file that has the following kinds of lines (and many more lines): CP19 Oahu - Maunawili Falls CP20 Oahu - Maunawili Falls AG12 Oahu - Maunawili Falls CP22 Oahu - Maunawili Falls, Local area AG14 Oahu CP141 KZ102 Kauai -... (7 Replies)
Discussion started by: euspilapteryx
7 Replies

5. Ubuntu

starting Places->Networks at command line

Hi All I have UBUNTU 10.04 I would like to run at command line the gui application that I use for finding network places and navigate shared folders or network driver. I mean the one located under menu PLACES->NETWORK I tried using "nautilus" but you need to know in advance which IP to give and... (2 Replies)
Discussion started by: manustone
2 Replies

6. Shell Programming and Scripting

Ignore the 255 character limit of command line

Hi I would just like to ask if there is a way for UNIX to ignore/overcome the 255 character limit of the command line? My problem is that I have a really long line of text from a file (300+ bytes) which i have to "echo" and process by adding commands like "sed" to the end of the line, like... (5 Replies)
Discussion started by: agentgrecko
5 Replies

7. UNIX for Dummies Questions & Answers

Grep only line starting with....

Hello, I have a command that show some application information. Now, I have to grep there informations, like: # showlog | grep 1266 1266.1369866124 :: 1266.1304711286 :: 41031.1161812668 :: 41078.1301266480 :: 41641.712662564 :: 1266.333792515 :: 41462.1512661988 :: 1266.54932671... (5 Replies)
Discussion started by: Lord Spectre
5 Replies

8. SCO

Grep to ignore suffix & find end of line

In COBOL, a hyphen can be used in a field name and in a specific program some field names would be identical to others except a suffix was added--sometimes a suffix to a suffix was used. For example, assume I am looking for AAA, AAA-BBB, and AAA-BBB-CCC and don't want to look at AAA-BBB-CCC... (7 Replies)
Discussion started by: wbport
7 Replies

9. UNIX for Dummies Questions & Answers

How to grep a line not starting with # from a file (there are two lines starting with # and normal)?

e.g. File name: File.txt cat File.txt Result: #INBOUND_QUEUE=FAQ1 INBOUND_QUEUE=FAQ2 I want to get the value for one which is not commented out. Thanks, (3 Replies)
Discussion started by: Tanu
3 Replies

10. UNIX for Beginners Questions & Answers

Grep file starting from pattern matching line

I have a file with a list of references towards the end and want to apply a grep for some string. text .... @unnumbered References @sp 1 @paragraphindent 0 2017. @strong{Chalenski, D.A.}; Wang, K.; Tatanova, Maria; Lopez, Jorge L.; Hatchell, P.; Dutta, P.; @strong{Small airgun... (1 Reply)
Discussion started by: kristinu
1 Replies
cut(1)							      General Commands Manual							    cut(1)

NAME
cut - Displays specified parts from each line of a file SYNOPSIS
cut -b list [-n] [file...] cut -c list [file...] cut -f list [-d delim] [-s] [file...] STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: cut: XCU5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. OPTIONS
Cuts based on a list of bytes. Each selected byte is output, unless you also specify the -n option. For example, if you specify -b 1-72, the cut command writes out the first 72 bytes in each line of the file. Cuts based on a list of characters. It is not an error if you specify a character not in the input. Uses the specified character as the field delimiter (separator) when you specify the -f option. You must quote characters with special meaning to the shell, such as the space character. Any character can be used as delim. The default field delimiter is a tab character. Specifies a list of fields assumed to be separated in the file by a field delimiter character, speci- fied by the -d option or the tab character by default. For example, if you specify -f 1,7, the cut command writes out only the first and seventh fields of each line. If a line contains no field delimiters, the cut command passes them through intact (useful for table subhead- ings), unless you specify the -s option. Does not split characters. When specified with the -b option, each element in list of the form low-high (hyphen-separated numbers) is modified as follows: If the byte selected by low is not the first byte of a character, low is decre- mented to select the first byte of the character originally selected by low. If the byte selected by high is not the last byte of a char- acter, high is decremented to select the last byte of the character prior to the character originally selected by high, or zero (0) if there is no prior character. If the resulting range element has high equal to zero (0) or low greater than high, the list element is dropped from list for that input line without causing an error. Each element in list of the form low- is treated as previously described with high set to the number of bytes in the current line, not including the terminating newline character. Each element in list of the form -high is treated as previously described with low set to 1. Each element in list of the form number (a single number) is treated as previously described with low set to number and high set to number. Suppresses lines that do not contain delimiter characters (use only with the -f option). Unless you include this option, lines with no delimiters are passed through. OPERANDS
The path name of the file to be examined. If you do not specify a file or you specify a hyphen (-), the cut command reads standard input. DESCRIPTION
The cut command locates the specified fields in each line of the specified file and writes the characters in those fields to standard out- put. You must specify the -b option (to select bytes), the -c option (to select characters) or the -f option (to select fields). The list argu- ment (see the -b, -c, and -f options) must be a space-separated or comma-separated list of positive numbers and ranges. Ranges can be in three forms: Two positive numbers separated by a hyphen (-), as in the form low-high, which represents all fields from the first number to the second number. A positive number preceded by a hyphen (-), as in the form -high, which represents all fields from field number 1 to that number. A positive number followed by a hyphen (-), as in the form low-, which represents that number to the last field, inclusive. The elements in list can be repeated, can overlap, and can be specified in any order. Some sample list specifications are as follows: First, fourth, and seventh bytes or fields. First through third and eighth bytes or fields. First through fifth and tenth bytes or fields. Third through last bytes or fields. The fields specified by list can be a fixed number of byte positions, or the length can vary from line to line and be marked with a field delimiter character, such as a tab character. [Tru64 UNIX] You can also use the grep command to make horizontal cuts through a file and the paste command to put the files back together. To change the order of columns in a file, use the cut and paste commands. EXIT STATUS
The following exit values are returned: Successful completion. An error occurred. EXAMPLES
To display several fields of each line of a file, enter: cut -f 1,5 -d : /etc/passwd This displays the login name and full user name fields of the system password file. These are the first and fifth fields (-f 1,5) sepa- rated by colons (-d :). So, if the /etc/passwd file looks like this: su:UHuj9Pgdvz0J":0:0:User with special privileges:/: daemon:*:1:1::/etc: bin:*:2:2::/usr/bin: sys:*:3:3::/usr/src: adm:*:4:4:System Admin- istrator:/usr/adm: pierre:*:200:200:Pierre Harper:/u/pierre: joan:*:202:200:Joan Brown:/u/joan: Then, cut -f 1,5 -d : /etc/passwd produces this output: su:User with special privileges daemon: bin: sys: adm:System Administrator pierre:Pierre Harper joan:Joan Brown ENVIRONMENT VARIABLES
The following environment variables affect the execution of cut: Provides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the internationalization vari- ables contain an invalid setting, the utility behaves as if none of the variables had been defined. If set to a non-empty string value, overrides the values of all the other internationalization variables. Determines the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multibyte characters in arguments and input files). Determines the locale for the format and contents of diagnostic messages written to standard error. Determines the location of message catalogues for the processing of LC_MESSAGES. SEE ALSO
Commands: grep(1), fold(1), join(1), paste(1) Standards: standards(5) cut(1)
All times are GMT -4. The time now is 07:46 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy