Re: printing words without newlines?

[email protected] (Kenny McCormack) Mon, 13 May 2024 06:56:50 -0000 (UTC)
Newsgroups alt.comp.lang.awk,comp.lang.awk
Organization The official candy of the new Millennium
Message-ID <[email protected]>
In article <[email protected]>,
David Chmelik  <[email protected]> wrote:
...
># print_file_words.awk
># pass filename to function
>BEGIN { print_file_words("data.txt"); }
>
># read two-column array from file and sort lines and print
>function print_file_words(file) {
># set record separator then use print
># ORS=" "
>  while(getline<file) arr[$1]=$0
>  PROCINFO["sorted_in"]="@ind_num_asc"
>  for(i in arr) 
>  {
>    split(arr[i],arr2)
>    # output all words or on one line with ORS
>    print arr2[2]
>    # output all words on one line without needing ORS
>    #printf("%s ",arr2[2])
>  }
>}
>------------------------------------------------------------------------
># sample data.txt
>2 your
>1 all
>3 base
>5 belong
>4 are
>7 us
>6 to

I guess this is what you actually want:

{ A[$1] = $2 }
END {
    len = length(A)
    for (i=1; i<=len; i++)
	printf("%s%s",A[i],i<len ? " " : "\n")
    }

-- 
The randomly chosen signature file that would have appeared here is more than 4
lines long.  As such, it violates one or more Usenet RFCs.  In order to remain
in compliance with said RFCs, the actual sig can be found at the following URL:
	http://user.xmission.com/~gazelle/Sigs/Noam