Sponsored Content
Top Forums Shell Programming and Scripting How can I match the particular character in the string? Post 302672343 by ctsgnb on Monday 16th of July 2012 09:08:38 AM
Old 07-16-2012
Code:
# cat tst
20120608: [TXT 120k-130k(130k), manachan]
20120608: [TXT 120k-130k(130k), natsumi]
............
20120608: [Full TxT 120k-130k(130k), manatsu]
..........
2012031201: [TXT 350k-540k(600k)], hime]
# awk -F"[][ ]" 'NF>4{a[$3]=(a[$3]?a[$3] RS:z) $(NF-1)}END{for(i in a) {print i":" RS a[i]}}' tst
Full:
manatsu
TXT:
manachan
natsumi
hime
# awk -F"[][ ]" 'tolower($3)~/full|txt/{a[$3]=(a[$3]?a[$3] RS:z)  $(NF-1)}END{for(i in a) {print i":" RS a[i]}}' tst
Full:
manatsu
TXT:
manachan
natsumi
hime

awk -F"[][ ]"use the square braket as well as the space charactere as fields separator
'tolower($3)~/full<pipe>txt/According to those field separators if the third field set to lower case matches "full" or "txt"
{a[$3]=(a[$3]?a[$3] RS:z) $(NF-1)}then build associative array indexed by the value of $3 and concatenate in element a[$3] the field N-1
a[$3]?a[$3] RS:z just means : if a[$3] is true (means : is not null and not empty and not equal to zero), then assign it with itself + a record separator(new line), otherwise assign z (wich defaulty has not been assigned so its value is empty)
a[$3]=(a[$3]?a[$3] RS:z) $(NF-1)concatenate the N-1** field to the previous expression and store it into the a[$3] element
 (**)since space " " and closing square bracket "]" are record separator)
END{ once the whole input file has been processed
for(i in a) {for all index existing in array a
print i":" RS a[i]}}'Display the name of the index with ":" then new line, then the element that contains the list of concatenated entries found for that index

Last edited by ctsgnb; 07-16-2012 at 10:38 AM..
This User Gave Thanks to ctsgnb For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

match a character in a line and replace

Hi, I have a file with large number of records. Sample below: 123456789QWERT2U 2 erter 987123678ZXCVB6Y 5 7689 934567123GHJKUI4O 7 - -- -- I want the 16th character in each record to be replaced with the below as follows;so 2 will become K, 6 will become O and 4 will become... (3 Replies)
Discussion started by: er_ashu
3 Replies

2. Shell Programming and Scripting

Korn: How to loop through a string character by character

If I have a string defined as: MyString=abcde echo $MyString How can I loop through it character by character? I haven't been able to find a way to index the string so that I loop through it. shew01 (10 Replies)
Discussion started by: shew01
10 Replies

3. Homework & Coursework Questions

character match and count

Use and complete the template provided. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: How can I count number of occurance of a single character in a file.. eg. How many '$' characters are there in account file..! 2. Relevant commands,... (1 Reply)
Discussion started by: aadi_uni
1 Replies

4. Shell Programming and Scripting

exact string match ; search and print match

I am trying to match a pattern exactly in a shell script. I have tried two methods awk '/\<mpath${CURR_MP}\>/{print $1 $2}' multipath perl -ne '/\bmpath${CURR_MP}\b/ and print' /var/tmp/multipath Both these methods require that I use the escape character. I am guessing that is why... (8 Replies)
Discussion started by: bash_in_my_head
8 Replies

5. Shell Programming and Scripting

How to match character with single quote?

I need to check whether first character of variable is single quote. I tried the below constructions but they are all not working (always return true) if (test `echo "$REGEXP" |cut -c1` != "'"); then echo "TRUE"; fi if (test `echo "$REGEXP" |cut -c1` != '\''); then echo "TRUE"; fi if (test... (5 Replies)
Discussion started by: urello
5 Replies

6. Shell Programming and Scripting

awk : match the string and string with the quotes :

Hi all, Here is the data file: - want to match only lan3 in the output . - not lan3:1 file : OPERATING_SYSTEM=HP-UX LOOPBACK_ADDRESS=127.0.0.1 INTERFACE_NAME="lan3" IP_ADDRESS="10.53.52.241" SUBNET_MASK="255.255.255.192" BROADCAST_ADDRESS="" INTERFACE_STATE=""... (2 Replies)
Discussion started by: rveri
2 Replies

7. Shell Programming and Scripting

sed Character match and replace

Hello All I am struck in the issue which I want to share with all of you. What I am trying to do is For every line in a file I have to replace a particular character from the given character in a file For Example Suppose the data is 1111x2222 1111x2222 2222y3333 1111x2222 I... (4 Replies)
Discussion started by: adisky123
4 Replies

8. Shell Programming and Scripting

Match string against character class in bash

Hello, I want to check whether string has only numeric characters. The following code doesn't work for me #!/usr/local/bin/bash if ]]; then echo "true" else echo "False" fi # ./yyy '346' False # ./yyy 'aaa' False I'm searching for solution using character classes, not regex.... (5 Replies)
Discussion started by: urello
5 Replies

9. Shell Programming and Scripting

Extracting character between 2 token - using only first match

Hello. ps -ae return I would like that the following command return 3214 echo " 3214 ? 00:00:01 acroread" | grep -o "]]]*" (5 Replies)
Discussion started by: jcdole
5 Replies

10. Shell Programming and Scripting

sed searches a character string for a specified delimiter character, and returns a leading or traili

Hi, Anyone can help using SED searches a character string for a specified delimiter character, and returns a leading or trailing space/blank. Text file : "1"|"ExternalClassDEA519CF5"|"Art1" "2"|"ExternalClass563EA516C"|"Art3" "3"|"ExternalClass305ED16B8"|"Art9" ... ... ... (2 Replies)
Discussion started by: fspalero
2 Replies
LCP_MLEHASH(8)							   User Manuals 						    LCP_MLEHASH(8)

NAME
lcp_mlehash - generate a SHA-1 hash of a TXT MLE binary file suitable for use in a TXT launch control policy SYNOPSIS
lcp_mlehash [-v] [-c cmdline] [-h] mle-file DESCRIPTION
lcp_mlehash is used to generate a SHA-1 hash of the portion of an executable file that contains the Intel(R) TXT measured launched environ- ment (MLE). In the MLE binary file, the portion of the file to be used as the MLE is specified in the MLE header structure. If verbose mode is not used, the output is suitable for use as the mle-file to the lcp_crtpol and lcp_crtpolelt commands. OPTIONS
mle-file File name of the MLE binary. If it is a gzip file then it will be un-ziped before hashing. -v Verbose mode, display progress indications. -c cmdline Specify quote-delimited command line. It is important to specify the command line that is used when launching the MLE or the hash will not match what is calculated by SINIT. -h Print out the help message. EXAMPLES
lcp_mlehash -c "logging=memory,serial,vga" /boot/tboot.gz > mle-hash SEE ALSO
lcp_readpol(8), lcp_writepol(8), lcp_crtpol(8), lcp_crtpolelt(8). tboot 2011-12-31 LCP_MLEHASH(8)
All times are GMT -4. The time now is 03:20 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy