Sponsored Content
Full Discussion: Confusing sed error message
Top Forums Shell Programming and Scripting Confusing sed error message Post 303027506 by Ralph on Monday 17th of December 2018 05:00:24 PM
Old 12-17-2018
Thanks. That worked well.

I also modified my script to avoid duplicates in the first place, using an array to save filenames and compare them to incoming new ones.

It is reassuring that the results are the same as with awk '!A[$2,$3]++ && !A[$3,$2]++' file.

Now spending some time with awk to figure out what that actually does...

--- Post updated at 10:00 PM ---

Quote:
Originally Posted by Scrutinizer
Assuming the fields in your input file are whitespace separated, you could try this approach:
Code:
awk '!A[$2,$3]++ && !A[$3,$2]++' file

Hm...
I converted this, with some trial and error, into what I think an awk program would look like:
Code:
#!/usr/bin/awk -f
{
#       !A[$2,$3]++ && !A[$3,$2]++
        !A[$2 " " $3]++ && !A[$3 " " $2]++
}
END {
        for ( i in A ){
                if ( A[i] == 1 )
                print A[i], i;
        }
}

Two questions:
1) If I keep the A[$2,$3] and A[$3,$2] then the output produces a funny character between the two filenames but the command line version works fine. What is the problem?
2) How does the command line version know to print only those keys (i) for which the count is 1?

I'm using GNU Awk 4.1.4, API: 1.1 (GNU MPFR 3.1.5, GNU MP 6.1.2)

(I'll figure it out somehow but it's getting late and it doesn't hurt to ask.)
Thanks.

Last edited by Ralph; 12-17-2018 at 06:29 PM..
 

9 More Discussions You Might Find Interesting

1. Solaris

(Need Help) confusing format on solaris 10

Hi All, Very need help about format syntax on solaris 10. I have done install Solaris 10 OS on sun fire v245 but currently i have a problem to use "format" command to display partition info for my hard drive. i cannot enter the format menu, below is captured display : # format Searching... (7 Replies)
Discussion started by: bucci
7 Replies

2. Shell Programming and Scripting

Confusing Error

Hi all, Just subscribed to this forum. Not a regular user of Unix.:) I did the following: We have a directory structure /a/b/c5/ Where c5 is the only directory inside b. export ANOOP=/a/b/c*/ echo $ANOOP=/a/b/c5/ I have to create a symbolic link to anoop.txt in the directory... (2 Replies)
Discussion started by: Pankajakshan
2 Replies

3. Shell Programming and Scripting

Confusing me......!!!!!!

Hiii... There... I am making a Script in which I am taking the value of a variable "var" through key board. But I want, if no values are supplied for "var" for more than 5 seconds then script shuld automatically exit.Script is as follow : #cat abc #!/bin/bash echo "Enter Your Choice : "... (4 Replies)
Discussion started by: prashantshukla
4 Replies

4. UNIX and Linux Applications

pikdev requirements confusing

I am looking at installing PiKdev which needs libqt3-mt and kdelibs4-dev. The installed package is qt-r1008952-i486-1 which claims to be a gui toolkit. find / -name "*libqt*" yields nothing with mt just a lot of support, compatible, and access widgets. Normally I would consider this a no go but... (0 Replies)
Discussion started by: slak0
0 Replies

5. Shell Programming and Scripting

Confusing find command option

Hi, I am a little bit confusing of using find command. Actually, I am planning to delete the files whatever the files are existing in the day before yesterday. So, I am writing the command like this. find . -name "*.txt" -ctime -2 { here I am confusing, if I will use +2 or +1 also I am... (5 Replies)
Discussion started by: nagraju.allam
5 Replies

6. Shell Programming and Scripting

sed garbled error message in bash shell

Sed garbled error. Cannot determine why the sed command to insert a line at the beginning of a file will not work on declared variables. outfile='DAR.V2.2012115.1.CSV' testfile='totality_request.sql' header_prefix='DATA FILE' no_ext_file=`echo $outfile |sed 's/\(.*\)..../\1/'` ... (6 Replies)
Discussion started by: smenago
6 Replies

7. Shell Programming and Scripting

sed to extract a multiline subject from a mail message

I'm trying to extract a subject from a mail message but my subject example has 2 lines. How can I manage to extract it and write a string at the end of it? Consider this example: From: test@domain.com Subject: Re: U =?ISO-8859-1?Q?qu=EA=3F!=3F!=3F!!_wtff_=E7=E3o_=ED=F3?= ... (6 Replies)
Discussion started by: twisterbr
6 Replies

8. Shell Programming and Scripting

Ps command output confusing

Hi, I ran a script named cat item when I searched for this script using command PS I get two process . I don't understand this. Also this script has run for 15 minutes but the time is showing as 0:00:confused::confused: ps -ef | grep cat_item catmgr 4508 4486 0 05:10:29 ? 0:00... (5 Replies)
Discussion started by: TomG
5 Replies

9. Shell Programming and Scripting

Confusing of some basic awk

1. increase file space first, double space a file: awk '1;{print ""}' I probably can understand it:print a blank line every time.But when I read triple space a file I am confused: awk '1;{print "\n"}' doesn't it meaning print a blank line every time too? 2. number each line of file, but... (6 Replies)
Discussion started by: hhdzhu
6 Replies
hx509 error functions(3)					Heimdalx509library					  hx509 error functions(3)

NAME
hx509 error functions - Functions void hx509_clear_error_string (hx509_context context) void hx509_set_error_stringv (hx509_context context, int flags, int code, const char *fmt, va_list ap) void hx509_set_error_string (hx509_context context, int flags, int code, const char *fmt,...) char * hx509_get_error_string (hx509_context context, int error_code) void hx509_free_error_string (char *str) void hx509_err (hx509_context context, int exit_code, int error_code, const char *fmt,...) Detailed Description See the Hx509 error reporting functions for description and examples. Function Documentation void hx509_clear_error_string (hx509_context context) Resets the error strings the hx509 context. Parameters: context A hx509 context. void hx509_err (hx509_context context, int exit_code, int error_code, const char * fmt, ...) Print error message and fatally exit from error code Parameters: context A hx509 context. exit_code exit() code from process. error_code Error code for the reason to exit. fmt format string with the exit message. ... argument to format string. void hx509_free_error_string (char * str) Free error string returned by hx509_get_error_string(). Parameters: str error string to free. char* hx509_get_error_string (hx509_context context, int error_code) Get an error string from context associated with error_code. Parameters: context A hx509 context. error_code Get error message for this error code. Returns: error string, free with hx509_free_error_string(). void hx509_set_error_string (hx509_context context, int flags, int code, const char * fmt, ...) See hx509_set_error_stringv(). Parameters: context A hx509 context. flags o HX509_ERROR_APPEND appends the error string to the old messages (code is updated). code error code related to error message fmt error message format ... arguments to error message format void hx509_set_error_stringv (hx509_context context, int flags, int code, const char * fmt, va_list ap) Add an error message to the hx509 context. Parameters: context A hx509 context. flags o HX509_ERROR_APPEND appends the error string to the old messages (code is updated). code error code related to error message fmt error message format ap arguments to error message format Version 1.5.2 11 Jan 2012 hx509 error functions(3)
All times are GMT -4. The time now is 10:44 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy