Sponsored Content
Top Forums Shell Programming and Scripting Best practice for bracket comparisons? Post 302386503 by jim mcnamara on Tuesday 12th of January 2010 03:07:32 PM
Old 01-12-2010
Several points: [[ and [ may not have precisely the same semantics in some shells. example ksh.
try
Code:
type [  
type [[

Comparisons with string values are [ "string" = "string" ], not ==.

anyway - don't hard code values, except perhaps something that will never change,
example: a status return code of zero always means 'ok', so it can never change.

Why do this? because you can put all of the control variables right at the top of the code, so you can change behavior just by editing a few closely located lines of code. The other reason is that you could miss a "1" somewhere during an edit, completely breaking your code.

A lot of code examples on the forums here do not follow that practice because adding extra variables confuses people just starting out in scripting.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Can grep do numerical comparisons?

Say for example I have a list of numbers.. 5 10 13 48 1 could I use grep to show only those numbers that are above 10? For various reasons I can only use grep... not awk or sed etc. (7 Replies)
Discussion started by: Uss_Defiant
7 Replies

2. Shell Programming and Scripting

numeric range comparisons

I have two files.And a sort of matrix analysis. Both files have a string followed by two numbers: File 1: A 2 7 B 3 11 C 5 10 ...... File 2: X 1 10 Y 3 5 Z 5 9 What I'd like to do is for each set of numbers in the second file indicate if the first or second number (or both) in... (7 Replies)
Discussion started by: dcfargo
7 Replies

3. UNIX for Dummies Questions & Answers

Command comparisons

Hi guys, Im trying to figure out what is the difference between using a | and the command xargs ... examples of usage: 1) ls * | wc -w => this gives you the number of files in the current directory including all subdirectories 2) find . “*.log” | xargs grep ERROR => this gives... (6 Replies)
Discussion started by: avidrunner
6 Replies

4. Shell Programming and Scripting

ksh, difference between double bracket and single bracket

Can somebody tell me the difference between double brackets and single brackets, when doing a test. I have always been acustomed to using single brackets and have not encountered any issues to date. Why would somebody use double brackets. Ie if ] vs if Thanks to... (2 Replies)
Discussion started by: BeefStu
2 Replies

5. Shell Programming and Scripting

String comparisons

Can someone please tell me what is wrong with this stings comparison? #!/bin/sh #set -xv set -u VAR=$(ping -c 5 -w 10 google.com | grep icmp_req=5 | awk '{print $6}') echo I like cookies echo $VAR if "$VAR" == 'icmp_req=5' then echo You Rock else echo You Stink fiThis is the error.... (6 Replies)
Discussion started by: cokedude
6 Replies

6. UNIX for Dummies Questions & Answers

Date comparisons

Hi, I want to perform a simple date comparisons, i.e. select all files modified after a certain date (say 12-feb-2011) I do not have the option of creating a file and using find's -newer option. Any simple way to do this? I can do this by reading the stat command's output and comparing... (10 Replies)
Discussion started by: jawsnnn
10 Replies

7. UNIX for Dummies Questions & Answers

File and if statement comparisons

I'd love to get help on this one please. Ok so say I have a file called README with lines such as this: index:index.html required:file1.1:file2.1:file3.1 I'm having trouble with writing an if statement that compares the items in a list with a file inside README, what I imagine in my head... (7 Replies)
Discussion started by: mistsong1
7 Replies

8. Shell Programming and Scripting

Pair wise comparisons

Hi, I have 25 groups and I need to perform all possible pairwise compariosns between them using the formula n(n-1)/2. SO in my case it will be 25(25-1)/2 which is equal to 300 comparisons. my 25 groups are FG1 FG2 FG3 FG4 FG5 NT5E CD44 CD44 CD44 AXL ADAM19 CCDC80 L1CAM L1CAM CD44... (1 Reply)
Discussion started by: Diya123
1 Replies

9. Shell Programming and Scripting

File comparisons

Hi all, I want to compare two files based on column value Kindly help me a.txt 123,ABCD 456,DEF 789,SDF b.txt 123,KJI 456,LMN 321,MJK 678,KOL Output file should be like Common on both files c.txt 123,ABCD,KJI (8 Replies)
Discussion started by: aaysa123
8 Replies

10. Shell Programming and Scripting

String regex comparisons

Here is the sample code: str1="abccccc" str2="abc?" if ]; then echo "same string" else echo "different string" fi Given that ? implies 0 or 1 match of preceding character, I was expecting the output to be "different string", but I am seeing "same string". Am I not using the... (3 Replies)
Discussion started by: Rameshck
3 Replies
ERR_print_errors(3)						      OpenSSL						       ERR_print_errors(3)

NAME
ERR_print_errors, ERR_print_errors_fp - print error messages SYNOPSIS
#include <openssl/err.h> void ERR_print_errors(BIO *bp); void ERR_print_errors_fp(FILE *fp); DESCRIPTION
ERR_print_errors() is a convenience function that prints the error strings for all errors that OpenSSL has recorded to bp, thus emptying the error queue. ERR_print_errors_fp() is the same, except that the output goes to a FILE. The error strings will have the following format: [pid]:error:[error code]:[library name]:[function name]:[reason string]:[file name]:[line]:[optional text message] error code is an 8 digit hexadecimal number. library name, function name and reason string are ASCII text, as is optional text message if one was set for the respective error code. If there is no text string registered for the given error code, the error string will contain the numeric code. RETURN VALUES
ERR_print_errors() and ERR_print_errors_fp() return no values. SEE ALSO
err(3), ERR_error_string(3), ERR_get_error(3), ERR_load_crypto_strings(3), SSL_load_error_strings(3) HISTORY
ERR_print_errors() and ERR_print_errors_fp() are available in all versions of SSLeay and OpenSSL. 0.9.7d 2002-04-30 ERR_print_errors(3)
All times are GMT -4. The time now is 04:02 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy