Sponsored Content
Full Discussion: Sh vs bash
Top Forums Shell Programming and Scripting Sh vs bash Post 302912247 by wisecracker on Wednesday 6th of August 2014 05:42:37 PM
Old 08-06-2014
Strangely enough I found this some time ago in the early stages of the AudioScope.sh development:-
Code:
Last login: Wed Aug  6 22:34:25 on ttys000
AMIGA:barrywalker~> for n in {1..10}; do printf "$n\n"; n=$((n+2)); done
1
2
3
4
5
6
7
8
9
10
AMIGA:barrywalker~> _

I still don't understand what is happening, as I would have thought that the "n" inside the loop would either create an error or be the equivalent of a "step of 2".
Would this be a bug or am I missing something...
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

passing variable from bash to perl from bash script

Hi All, I need to pass a variable to perl script from bash script, where in perl i am using if condition. Here is the cmd what i am using in perl FROM_DATE="06/05/2008" TO_DATE="07/05/2008" "perl -ne ' print if ( $_ >="$FROM_DATE" && $_ <= "$TO_DATE" ) ' filename" filename has... (10 Replies)
Discussion started by: arsidh
10 Replies

2. Shell Programming and Scripting

bash and ksh: variable lost in loop in bash?

Hi, I use AIX (ksh) and Linux (bash) servers. I'm trying to do scripts to will run in both ksh and bash, and most of the time it works. But this time I don't get it in bash (I'm more familar in ksh). The goal of my script if to read a "config file" (like "ini" file), and make various report.... (2 Replies)
Discussion started by: estienne
2 Replies

3. Shell Programming and Scripting

how to make your bash script run on a machine with csh and bash

hi, i have a script that runs on bash and would like to run it on a machine that has csh and bash. the default setting on that machine is csh. i dont want to change my code to run it with a csh shell. is there any way i can run the script (written in bash) on this machine? in other words is there... (3 Replies)
Discussion started by: npatwardhan
3 Replies

4. Shell Programming and Scripting

Using arrays in bash using strings to bash built-in true

I have the following code and for some reason when I call the program using /home/tcdata/tatsh/trunk/hstmy/bin/bash/raytrac.bash --cmod=jcdint.cmod I get hasArgument = hasArgument = true Somehow the array element is returning even though I have not chosen the option. ... (41 Replies)
Discussion started by: kristinu
41 Replies

5. UNIX for Dummies Questions & Answers

Im new to bash scriping and i found this expression on a bash script what does this mean.

# check host value regex='^(||1|2|25)(\.(||1|2|25)){3}$' if ')" != "" ]; then if ]; then echo host $host not found exit 4 fi elif ]; then echo $host is an invalid host address exit 5 fi espeacailly the top regex part? ---------- Post updated at 06:58 PM ---------- Previous update was... (1 Reply)
Discussion started by: kevin298
1 Replies

6. Shell Programming and Scripting

Bash to select text and apply it to a selected file in bash

In the bash below I am asking the user for a panel and reading that into bed. Then asking the user for a file and reading that into file1.Is the grep in bold the correct way to apply the selected panel to the file? I am getting a syntax error. Thank you :) ... (4 Replies)
Discussion started by: cmccabe
4 Replies

7. Shell Programming and Scripting

How to run several bash commands put in bash command line?

How to run several bash commands put in bash command line without needing and requiring a script file. Because I'm actually a windows guy and new here so for illustration is sort of : $ bash "echo ${PATH} & echo have a nice day!" will do output, for example:... (4 Replies)
Discussion started by: abdulbadii
4 Replies

8. Shell Programming and Scripting

Different behavior between bash shell and bash script for cmd

So I'm trying to pass certain json elements as env vars and use them later on in a script. Sample json: JSON='{ "Element1": "file-123456", "Element2": "Name, of, company written in, a very weird way", "Element3": "path/to/some/file.txt", }' (part of the) script: for s... (5 Replies)
Discussion started by: da1
5 Replies

9. UNIX for Beginners Questions & Answers

Escape bash-special character in a bash string

Hi, I am new in bash scripting. In my work, I provide support to several users and when I connect to their computers I use the same admin and password, so I am trying to create a script that will only ask me for the IP address and then connect to the computer without having me to type the user... (5 Replies)
Discussion started by: arcoa05
5 Replies

10. UNIX for Beginners Questions & Answers

In Bash shell - the ps -ef shows only the /bin/bash but the script name is not displayed

In Bash shell - the ps -ef shows only the /bin/bash but the script name is not displayed ? Is there any way to get the script names for the process command ? --- Post updated at 08:39 AM --- in KSH (Korn Shell), my command output shows the script names but when run in the Bash Shell... (3 Replies)
Discussion started by: i4ismail
3 Replies
AnyEvent::FAQ(3pm)					User Contributed Perl Documentation					AnyEvent::FAQ(3pm)

NAME
AnyEvent::FAQ - frequently asked questions The newest version of this document can be found at <http://pod.tst.eu/http://cvs.schmorp.de/AnyEvent/lib/AnyEvent/FAQ.pod>. My program exits before doing anything, what's going on? Programmers new to event-based programming often forget that you can actually do other stuff while "waiting" for an event to occur and therefore forget to actually wait when they do not, in fact, have anything else to do. Here is an example: use AnyEvent; my $timer = AnyEvent->timer (after => 5, cb => sub { say "hi" }); The expectation might be for the program to print "hi" after 5 seconds and then probably to exit. However, if you run this, your program will exit almost instantly: Creating the timer does not wait for it, instead the "timer" method returns immediately and perl executes the rest of the program. But there is nothing left to execute, so perl exits. To force AnyEvent to wait for something, use a condvar: use AnyEvent; my $quit_program = AnyEvent->condvar; my $timer = AnyEvent->timer (after => 5, cb => sub { $quit_program->send }); $quit_program->recv; Here the program doesn't immediately exit, because it first waits for the "quit_program" condition. In most cases, your main program should call the event library "loop" function directly: use EV; use AnyEvent; ... EV::loop; Why is my "tcp_connect" callback never called? Tricky: "tcp_connect" (and a few other functions in AnyEvent::Socket) is critically sensitive to the caller context. In void context, it will just do its thing and eventually call the callback. In any other context, however, it will return a special "guard" object - when it is destroyed (e.g. when you don't store it but throw it away), tcp_connect will no longer try to connect or call any callbacks. Often this happens when the "tcp_connect" call is at the end of a function: sub do_connect { tcp_connect "www.example.com", 80, sub { ... lengthy code }; } Then the caller decides whether there is a void context or not. One can avoid these cases by explicitly returning nothing: sub do_connect { tcp_connect "www.example.com", 80, sub { ... lengthy code }; () # return nothing } Why do some backends use a lot of CPU in "AE::cv->recv"? Many people try out this simple program, or its equivalent: use AnyEvent; AnyEvent->condvar->recv; They are then shocked to see that this basically idles with the Perl backend, but uses 100% CPU with the EV backend, which is supposed to be sooo efficient. The key to understand this is to understand that the above program is actually buggy: Nothing calls "->send" on the condvar, ever. Worse, there are no event watchers whatsoever. Basically, it creates a deadlock: there is no way to make progress, this program doesn't do anything useful, and this will not change in the future: it is already an ex-parrot. Some backends react to this by freezing, some by idling, and some do a 100% CPU loop. Since this program is not useful (and behaves as documented with all backends, as AnyEvent makes no CPU time guarantees), this shouldn't be a big deal: as soon as your program actually implements something, the CPU usage will be normal. Why does this FAQ not deal with AnyEvent::Handle questions? Because AnyEvent::Handle has a NONFAQ on its own that already deals with common issues. How can I combine Win32::GUI applications with AnyEvent? Well, not in the same OS thread, that's for sure :) What you can do is create another ithread (or fork) and run AnyEvent inside that thread, or better yet, run all your GUI code in a second ithread. For example, you could load Win32::GUI and AnyEvent::Util, then create a portable socketpair for GUI->AnyEvent communication. Then fork/create a new ithread, in there, create a Window and send the "$WINDOW->{-Handle}" to the AnyEvent ithread so it can "PostMessage". GUI to AnyEvent communication could work by pushing some data into a Thread::Queue and writing a byte into the socket. The AnyEvent watcher on the other side will then look at the queue. AnyEvent to GUI communications can also use a Thread::Queue, but to wake up the GUI thread, it would instead use "Win32::GUI::PostMessage $WINDOW, 1030, 0, """, and the GUI thread would listen for these messages by using "$WINDOW->Hook (1030 (), sub { ... })". My callback dies and... It must not - part of the contract betwene AnyEvent and user code is that callbacks do not throw exceptions (and don't do even more evil things, such as using "last" outside a loop :). If your callback might die sometimes, you need to use "eval". If you want to track down such a case and you can reproduce it, you can enable wrapping (by calling "AnyEvent::Debug::wrap" or by setting "PERL_ANYEVENT_DEBUG_WRAP=1" before starting your program). This will wrap every callback into an eval and will report any exception complete with a backtrace and some information about which watcher died, where it was created and so on. Author Marc Lehmann <schmorp@schmorp.de>. perl v5.14.2 2012-04-05 AnyEvent::FAQ(3pm)
All times are GMT -4. The time now is 03:50 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy