10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
HI,
I have two files and contains many Fields with | (pipe) delimitor, wanted to compare both the files and get only unmatched perticular fields. this i wanted to use in shell scriting.
ex:
first.txt
111 |abc| 230| hbc231 |bbb |210 |bbd405 |ghc |555 |cgv
second.txt
111 |abc |230 |hbc231... (1 Reply)
Discussion started by: prawinmca
1 Replies
2. Shell Programming and Scripting
Hi,
I have fileA.txt like this.
B01B02 D0011718
B01B03 D0012540
B01B04 D0006145
B01B05 D0004815
B01B06 D0012069
B01B07 D0004064
B01B08 D0011988
B01B09 D0012071
B01B10 D0005596
B01B11 D0011351
B01B12 D0004814
B01C01 D0011804
I want to compare this against another file (fileB.txt)... (3 Replies)
Discussion started by: genehunter
3 Replies
3. Shell Programming and Scripting
Dear All,
I would really appreciate if you can help me to resolve this file comparison
I have two files:
file1:
chr start end ID gene_name
chr1 2020 3030 1 test1
chr1 900 5000 2 test1
chr2 5000 8000 3 test2
chr3 6000 12000 4 test3
chr3 6000 15000 5 test3
file2:... (2 Replies)
Discussion started by: paolo.kunder
2 Replies
4. Shell Programming and Scripting
Hello, I am trying to compare 2 files and get only the new lines as output. Note that new lines can be anywhere in the file and not necessarily at the bottom of the file.
I have made the following progress so far.
/home/aa>cat old.txt
0001 732 A
0002 732 C
0005 732 D... (7 Replies)
Discussion started by: cartrider
7 Replies
5. Shell Programming and Scripting
Hi all,
i have two .csv files. i need to compare those two files and if there is any difference that should be moved into third .csv file.
example,
org.csv and dup.csv
when we compare those two files org.csv and dup.csv. if there is any change in dup.csv. it should be capture in third... (7 Replies)
Discussion started by: baskivs
7 Replies
6. Shell Programming and Scripting
now i have a different file zoo.txt with content
123|zoo
234|natan
456|don
and file rick.txt with contents
123|dog|pie|pep
123|tail|see|newt
456|som|sin|sim
234|pay|rat|cat
i want to look for lines in file zoo.txt column1 that has same corresponding lines in column 1 of... (6 Replies)
Discussion started by: dealerso
6 Replies
7. Shell Programming and Scripting
Hi i have 2 csv files a.csv and b.csv with the same number of columns and a list of values in both of it. Each and every individual value in both the files need to compared and if it matches then print correct in a new csv file otherwise print Incorrect
eg
a.csv
1,12/27/2007,Reward,$10.00... (5 Replies)
Discussion started by: naveenn08
5 Replies
8. Shell Programming and Scripting
I have two text files which have records of thousand rows. Each row is having around 40 columns. Each column is tab delimited. Each row is delimited by newline character.
My requirement is to find for each row i need to find whether any column is different between the two files. For each row i... (8 Replies)
Discussion started by: uihnybgte
8 Replies
9. UNIX for Dummies Questions & Answers
Hello all,
Can anyone help me with this.
There are two files and I have to match the second file records with that of first and if matched, print the output in two fies, one containing the matched records and other containing the rest.
Here is the example.
File1
"111",erter,"00000", ... (4 Replies)
Discussion started by: er_ashu
4 Replies
10. Shell Programming and Scripting
I have to compare two text files, very few of the lines in these files will have some difference in some column.
The files size is in GB.
Sample lines are as below:
11111122222222333333aaaaaaaaaabbbbbbbbbccccccccdddddd
11111122222222333333aaaaaaaaaabbbbbbbbbccccccccddeddd
So assuming these... (19 Replies)
Discussion started by: net_shree
19 Replies
lsort(n) Tcl Built-In Commands lsort(n)
__________________________________________________________________________________________________________________________________________________
NAME
lsort - Sort the elements of a list
SYNOPSIS
lsort ?options? list
_________________________________________________________________
DESCRIPTION
This command sorts the elements of list, returning a new list in sorted order. The implementation of the lsort command uses the merge-sort
algorithm which is a stable sort that has O(n log n) performance characteristics.
By default ASCII sorting is used with the result returned in increasing order. However, any of the following options may be specified
before list to control the sorting process (unique abbreviations are accepted):
-ascii Use string comparison with Unicode code-point collation order (the name is for backward-compatibility reasons.) This
is the default.
-dictionary Use dictionary-style comparison. This is the same as -ascii except (a) case is ignored except as a tie-breaker and (b)
if two strings contain embedded numbers, the numbers compare as integers, not characters. For example, in -dictionary
mode, bigBoy sorts between bigbang and bigboy, and x10y sorts between x9y and x11y.
-integer Convert list elements to integers and use integer comparison.
-real Convert list elements to floating-point values and use floating comparison.
-command command Use command as a comparison command. To compare two elements, evaluate a Tcl script consisting of command with the two
elements appended as additional arguments. The script should return an integer less than, equal to, or greater than
zero if the first element is to be considered less than, equal to, or greater than the second, respectively.
-increasing Sort the list in increasing order ("smallest"items first). This is the default.
-decreasing Sort the list in decreasing order ("largest"items first).
-indices Return a list of indices into list in sorted order instead of the values themselves. |
-index indexList If this option is specified, each of the elements of list must itself be a proper Tcl sublist. Instead of sorting
based on whole sublists, lsort will extract the indexList'th element from each sublist (as if the overall element and |
the indexList were passed to lindex) and sort based on the given element. For example,
lsort -integer -index 1
{{First 24} {Second 18} {Third 30}}
returns {Second 18} {First 24} {Third 30}, and
lsort -index end-1
{{a 1 e i} {b 2 3 f g} {c 4 5 6 d h}}
returns {c 4 5 6 d h} {a 1 e i} {b 2 3 f g}, and |
lsort -index {0 1} { |
{{b i g} 12345} |
{{d e m o} 34512} |
{{c o d e} 54321} |
} |
returns {{d e m o} 34512} {{b i g} 12345} {{c o d e} 54321} (because e sorts before i which sorts before o.) This
option is much more efficient than using -command to achieve the same effect.
-nocase |
Causes comparisons to be handled in a case-insensitive manner. Has no effect if combined with the -dictionary, -inte- |
ger, or -real options.
-unique If this option is specified, then only the last set of duplicate elements found in the list will be retained. Note
that duplicates are determined relative to the comparison used in the sort. Thus if -index 0 is used, {1 a} and {1 b}
would be considered duplicates and only the second element, {1 b}, would be retained.
NOTES
The options to lsort only control what sort of comparison is used, and do not necessarily constrain what the values themselves actually
are. This distinction is only noticeable when the list to be sorted has fewer than two elements.
The lsort command is reentrant, meaning it is safe to use as part of the implementation of a command used in the -command option.
EXAMPLES
Sorting a list using ASCII sorting:
% lsort {a10 B2 b1 a1 a2}
B2 a1 a10 a2 b1
Sorting a list using Dictionary sorting:
% lsort -dictionary {a10 B2 b1 a1 a2}
a1 a2 a10 b1 B2
Sorting lists of integers:
% lsort -integer {5 3 1 2 11 4}
1 2 3 4 5 11
% lsort -integer {1 2 0x5 7 0 4 -1}
-1 0 1 2 4 0x5 7
Sorting lists of floating-point numbers:
% lsort -real {5 3 1 2 11 4}
1 2 3 4 5 11
% lsort -real {.5 0.07e1 0.4 6e-1}
0.4 .5 6e-1 0.07e1
Sorting using indices:
% # Note the space character before the c
% lsort {{a 5} { c 3} {b 4} {e 1} {d 2}}
{ c 3} {a 5} {b 4} {d 2} {e 1}
% lsort -index 0 {{a 5} { c 3} {b 4} {e 1} {d 2}}
{a 5} {b 4} { c 3} {d 2} {e 1}
% lsort -index 1 {{a 5} { c 3} {b 4} {e 1} {d 2}}
{e 1} {d 2} { c 3} {b 4} {a 5}
Stripping duplicate values using sorting:
% lsort -unique {a b c a b c a b c}
a b c
More complex sorting using a comparison function:
% proc compare {a b} {
set a0 [lindex $a 0]
set b0 [lindex $b 0]
if {$a0 < $b0} {
return -1
} elseif {$a0 > $b0} {
return 1
}
return [string compare [lindex $a 1] [lindex $b 1]]
}
% lsort -command compare
{{3 apple} {0x2 carrot} {1 dingo} {2 banana}}
{1 dingo} {2 banana} {0x2 carrot} {3 apple}
SEE ALSO
list(n), lappend(n), lindex(n), linsert(n), llength(n), lsearch(n), lset(n), lrange(n), lreplace(n)
KEYWORDS
element, list, order, sort
Tcl 8.5 lsort(n)