The loop was executed $count times


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting The loop was executed $count times
# 8  
Old 11-19-2010
Quote:
Originally Posted by frans
Smilie which can be written
Code:
((count++))

That is bash/ksh only, it is not POSIX compliant, which is why I suggested count=$((count+1))

---------- Post updated at 11:22 ---------- Previous update was at 11:20 ----------

Quote:
Originally Posted by ctsgnb
or
Code:
let count++

Smilie
let and ++ are ksh/bash only, not POSIX

Instead of ++ you can use a direct assignment in POSIX like this:
Code:
i=0
while [ $((i+=1)) -le 5 ]; do
  echo $i
done


Last edited by Scrutinizer; 11-19-2010 at 06:33 AM..
# 9  
Old 11-19-2010
@Scruti :

I have just tried the following look ... funny behaviour Smilie :

Code:
$ exec /usr/xpg4/bin/sh
$ let i++
/usr/xpg4/bin/sh: i++: bad number
$ let i+=1
/usr/xpg4/bin/sh: i+=1: bad number
$ i=0
$ let i++
/usr/xpg4/bin/sh: i++: more tokens expected
$ let i+=1
$ echo $i
1
$

... it just demonstrates what you said Smilie
# 10  
Old 11-19-2010
Quote:
Originally Posted by Scrutinizer
That is bash/ksh only, it is not POSIX compliant, which is why I suggested count=$((count+1)) ...
Just a small correction: I believe POSIX suggests the following syntax:

Code:
count=$(($count+1))

# 11  
Old 11-19-2010
Since /usr/xpg4/bin/sh on Solaris is actually an adapted Korn shell, it may well understand "let". It is however not part of POSIX.
# 12  
Old 11-19-2010
OMG ... so on my machine, where should i go to find a POSIX shell ??? Smilie
Lol
# 13  
Old 11-19-2010
Quote:
Originally Posted by radoulov
Just a small correction: I believe POSIX suggests the following syntax:

Code:
count=$(($count+1))

I haven't come across a situation where leaving out the $-sign did not work. Also, I found this:
Quote:
If the shell variable x contains a value that forms a valid integer constant, then the arithmetic expansions "$((x))" and "$(($x))" shall return the same value
Arithmetic Expansion

---------- Post updated at 12:03 ---------- Previous update was at 12:00 ----------

Quote:
Originally Posted by ctsgnb
OMG ... so on my machine, where should i go to find a POSIX shell ??? Smilie
Lol
It is a POSIX compliant shell and so are ksh93 and bash. It is just that it may have some additional features that are not POSIX compliant.. If you want your code to work universally in all POSIX compliant shells you should avoid using those features.

Last edited by Scrutinizer; 11-19-2010 at 07:14 AM..
This User Gave Thanks to Scrutinizer For This Post:
# 14  
Old 11-19-2010
Yeah i meant : on my machine, where should i go to find a pure POSIX shell (no additional feature) ...( that was to test the "let" behaviour)

But anyway, i think that ... unless we meet special case (with strong cross system compatibility constraints and requirements) , i prefer to take advantage of the new fonctionalities offered by ksh or bash even if not purely POSIX compliant.

Smilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Reset while loop to loop same file multiple times

Hi, I want to read file multiple times. Right now i am using while loop but that is not working. ex. While read line do while read line2 do echo stmt1 #processing some data based on data., done < file2.txt done < file1.txt # This will have 10... (4 Replies)
Discussion started by: tmalik79
4 Replies

2. UNIX for Dummies Questions & Answers

How do I count how many times a specific word appear in a file (ksh)?

Hi Please can you help how do I count the number of specific characters or words that appear in a file? (8 Replies)
Discussion started by: fretagi
8 Replies

3. Shell Programming and Scripting

Count how many times in every file, strings appeared in a directory.

Hello, I have some files and i want to count how many times a string is appeared in each file. Lets say : #cat fileA stringA sdh stringB stringA #cat fileB stringB stringA sdb stringB stringB I need the output to be something like: (2 Replies)
Discussion started by: @dagio
2 Replies

4. UNIX for Dummies Questions & Answers

[Solved] Count amount of times of appearing of character before a word?

Hello Is there a way to calculate how many times a particular symbol appeared in a string before a particular word. Desktop/Myfiles/pet/dog/puppy So, I want to count number of occurence of"/" in this directory before the word dog lets say. Cheers, Bob (3 Replies)
Discussion started by: FUTURE_EINSTEIN
3 Replies

5. UNIX for Dummies Questions & Answers

how to count number of times each word exist in a file

I'm trying to count the number of times each word in the file exist for example if the file has: today I have a lot to write, but I will not go for it. The main thing is that today I am looking for a way to get each word in this file with a word count after it specifying that this word has... (4 Replies)
Discussion started by: shnkool
4 Replies

6. Shell Programming and Scripting

Match and count the number of times

ile1 Beckham Ronaldo file2 Beckham Beckham_human Ronaldo Ronaldo_spain Ronaldo Ronaldo_brazil Beckham Beckham_manch Zidane Zidane_Fran Rooney Rooney_Eng Output shud be (1 Reply)
Discussion started by: cdfd123
1 Replies

7. Shell Programming and Scripting

scripting - write a script that will count the number of times a particular word

hello everyone, I'm trying to learn some scripts but i cant get my head around two of them. 1. how can i write a script that will count the number of times a particular word is used in file? 2. how can i make a script that will take me to a web page from unix? if anyone could help it... (3 Replies)
Discussion started by: BigTool4u2
3 Replies

8. Shell Programming and Scripting

Looking for a single line to count how many times one character occurs in a word...

I've been looking on the internet, and haven't found anything simple enough to use in my code. All I want to do is count how many times "-" occurs in a string of characters (as a package name). It seems it should be very simple, and shouldn't require more than one line to accomplish. And this is... (2 Replies)
Discussion started by: Shingoshi
2 Replies

9. Shell Programming and Scripting

count times for one string

I have a file. I want to count the time for one string appears in this file Example: 56 73 34 79 90 56 34 Expected results 2:56 1:73 2:34 (1 Reply)
Discussion started by: anhtt
1 Replies

10. UNIX for Dummies Questions & Answers

Crons executed multiple times.

For some reason my crons are being executed twice. Any suggestion?? I'm currently on 5.8 (2 Replies)
Discussion started by: shorty
2 Replies
Login or Register to Ask a Question