02-27-2009
Quote:
It should work for any values. It compares "lexicographically in the current locale".
Not necessarily true. It will result in an unsatisfactory ordering for certain locales unless the correct collator (for the locale) is provided in the underlying OS to allow locale-sensitive ordering. Bash and other shells do not include built-in collators.
Some shells such as ksh93 and zsh specifically avoid the issue for this reason. From the ksh93 man page
Quote:
string1 < string2
True, if string1 comes before string2 based on ASCII value of their characters.
string1 > string2
True, if string1 comes after string2 based on ASCII value of their characters.
The zsh manual has almost identical text.
10 More Discussions You Might Find Interesting
1. Programming
Hi,
I am starting out to program on Unix, having had experience in C and C++ in DOS. I would like to know, of these three, which is the best book for learning C programming in Unix:
Advanced Unix Programming by Marc Rochkind
Advanced Unix Programming by Warren Gay
Advanced Programming in... (6 Replies)
Discussion started by: theicarusagenda
6 Replies
2. Shell Programming and Scripting
hi ,
i am trying to compre two strings
if ] or if ]
when the length of var1 is small (around 300-400 char ) it works fine
but when it is large (around 900-1000 chars) it fails
is there any limitations for this type of comparison ??? (3 Replies)
Discussion started by: amarnath
3 Replies
3. AIX
hi ,
i am trying to compre two strings
if ] or if ]
when the length of var1 is small (around 300-400 char ) it works fine
but when it is large (around 900-1000 chars) it fails
is there any limitations for this type of comparison ??? (1 Reply)
Discussion started by: amarnath
1 Replies
4. Shell Programming and Scripting
I want to remove a line that has empty string at second field when I use cut with delimeter , like below
$cat demo
hello, mum
hello,
#!/bin/sh
while read line
do
if
then
# remove the current line command goes here
fi
done < "demo"
i got an error message for above... (4 Replies)
Discussion started by: bonosungho
4 Replies
5. Solaris
I Have a script which gets the status of oracle database and if the status is READ WRITE ..it should echo "db is up " else "db is down"
Here is the code
if
then
echo "db up"
else
echo "db down"
fi
done;
The script is giving me out put "db down" even thoug the value of... (6 Replies)
Discussion started by: njafri
6 Replies
6. Shell Programming and Scripting
Hello everybody,
I decided to take a Unix Introduction class and have never had experience with programming. Everything was fine until recently when the Prof. started shell scripting and he wants us to make a small script to add unlimited numbers from arguments and from standard input.
I... (1 Reply)
Discussion started by: Florinel76
1 Replies
7. Homework & Coursework Questions
Hello everybody,
I decided to take a Unix Introduction class and have never had experience with programming. Everything was fine until recently when the Prof. started shell scripting and he wants us to make a small script to add unlimited numbers from arguments and from standard input.
I... (8 Replies)
Discussion started by: Florinel76
8 Replies
8. Shell Programming and Scripting
Hi,
can someone please help me!!! urgent!
I have a strange issue here. I grep for 2 strings from a txt files and compare the string value. Though the string values are the same, they are compared as different values. Please help
Case-1
--------
Here I grep for 2 different field values... (3 Replies)
Discussion started by: vani123
3 Replies
9. Shell Programming and Scripting
guys , i am using inotify for monitoring one directory to check core file generation , my snippet of code is follows
#!/bin/bash
DIR=$1
inotifywait -q -e create -m $DIR | while read path events name;
do
if ]; then
echo "Now I am going to do something with $name in directory $path."... (5 Replies)
Discussion started by: baker
5 Replies
10. Shell Programming and Scripting
I have the logic below to look up for matches within the columns between the two files with awk.
In the if statement is where the string comparison is attempted with ==
The issue seems to be with the operands, as
1. when " '${SECTOR}' " -- double quote followed by single quote -- awk matches... (1 Reply)
Discussion started by: deadyetagain
1 Replies
LEARN ABOUT DEBIAN
fstrcmp
fstrcmp(3) Library Functions Manual fstrcmp(3)
NAME
fstrcmp - fuzzy comparison of two strings
SYNOPSIS
#include <fstrcmp.h>
#define FSTRCMP_IDENTICAL
#define FSTRCMP_THRESHOLD
#define FSTRCMP_ERROR
double fstrcmp(const char *string1, const char *string2);
DESCRIPTION
The fstrcmp() function compares the two strings, string1 and string2.
RETURN VALUE
The fstrcmp function returns a floating point value between 0.0 and FSTRCMP_IDENTICAL. A value of 0.0 means the strings are utterly un-
alike. A value of FSTRCMP_IDENTICAL means the strings are identical. A value of more than FSTRCMP_THRESHOLD (it lies between 0.0 and
FSTRCMP_IDENTICAL) would be considered "similar" by most people.
A value of FSTRCMP_ERROR (always negative) indicates a malloc(3) failure.
SEE ALSO
fmemcmp(3)
fuzzy comparison of two memory areas
fstrcasecmp(3)
fuzzy comparison of two strings ignoring case
fstrcmpi(3)
fuzzy comparison of two strings
strcmp(3)
compare two strings
COPYRIGHT
fstrcmp version 0.4
Copyright (C) 2009 Peter Miller
Peter Miller <pmiller@opensource.org.au>
The comparison code is derived from the fuzzy comparison functions in GNU Gettext 0.17. The GNU Gettext comparison functions were, in
turn, derived from GNU Diff 2.7.
Copyright (C) 1988-2009 Free Software Foundation
fstrcmp(3)