473,467 Members | 1,656 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

system("PAUSE") for linux?

Is there something like system("PAUSE") for linux?
Nov 15 '05 #1
11 39846
In article <di**********@news.net.uni-c.dk>, Paminu <ja******@asd.com> wrote:
:Is there something like system("PAUSE") for linux?

As far as this newsgroup is concerned, the exact replacement is

system("PAUSE");

That's because as far as this newsgroup is concerned, PAUSE has
an unidentified system-dependant function. If the functionality of
PAUSE were to be described, then a Unix or Linux newsgroup would be
able to tell you what the nearest Linux equivilent would be.
On some systems, PAUSE means "suspend CPU activity on the system until
there is an interrupt". On others, it means "suspend the active process
for 1 second". On others, it means "flush any pending output and
wait until a key is pressed and then continue (without waiting for
a newline.) On others, the newline is required. On others, it means
"print the error message associated with not finding a named program
or command". On others it means "look for an executable program
named PAUSE in the current directory and execute it, with whatever
consequences that has." Others yet it would mean "look for an
executable program named PAUSE in the currently defined list of
program locations, and execute it, with whatever condequences that has."

Possibly the most common meaning, though, is "Play a recording
of your voice telling the dog to get his paws off of the furniture."
If that's the one you were looking for, see section 93.11 of the
Linux FAQ, which discusses the various ways of getting high-fidelity
playback of His Master's Voice on various kinds of sound cards
and Midi Synthesizers.
--
All is vanity. -- Ecclesiastes
Nov 15 '05 #2
Paminu <ja******@asd.com> writes:
Is there something like system("PAUSE") for linux?


We don't know. Try a Linux or Unix group. comp.unix.programmer is a
likely place to ask about this -- but first explain what
system("PAUSE") means.

But first, try reading the documentation that comes with the system.

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <*> <http://users.sdsc.edu/~kst>
We must do something. This is something. Therefore, we must do this.
Nov 15 '05 #3
Paminu wrote:
Is there something like system("PAUSE") for linux?


This is off-topic for comp.lang.c, you should have posted to
comp.unix.programmer. However, I have written a clone of the MS-DOS
pause command for Linux, and I can give you a link to it here.

http://members.optushome.com.au/sbiber/pause-1.0.tar.gz

It should work on other Unix-like systems too. Extract it, change to the
directory pause-1.0, and type
make
to build, and you can type
sudo make install
to copy the executable to /usr/local/bin

--
Simon.
Nov 15 '05 #4
In article <di**********@news.net.uni-c.dk>, Paminu <ja******@asd.com> wrote:


Is there something like system("PAUSE") for linux?


Linux programs generally don't do that. It makes it hard
to use your program in a pipe context, plus one usually
runs command line programs...from the command line...so by
default there's no danger of the window just disappearing
as soon as the program is done.

It's usually left to the user to pipe your program's output
through "less" or "more" if they want to pause between
screenfuls of data.
Nov 15 '05 #5
Simon Biber wrote:
Paminu wrote:
Is there something like system("PAUSE") for linux?


This is off-topic for comp.lang.c, you should have posted to
comp.unix.programmer. However, I have written a clone of the MS-DOS
pause command for Linux, and I can give you a link to it here.

http://members.optushome.com.au/sbiber/pause-1.0.tar.gz

It should work on other Unix-like systems too. Extract it, change to the
directory pause-1.0, and type
make
to build, and you can type
sudo make install
to copy the executable to /usr/local/bin

Ok done that but how do I use it in my source.c file??
Nov 15 '05 #6
Paminu wrote:

Is there something like system("PAUSE") for linux?


Assuming that system("PAUSE") causes a Windows box to display "press any
key to continue", and then waits for any keystroke, the answer is "no".
(Check the FAQ. I'm sure someone can give the exact section number.)

However, if you are willing to go for "press enter to continue" instead,
then you can simply printf() that message, and use a while loop waiting
for getchar() to return '\n'.

--
+-------------------------+--------------------+-----------------------------+
| Kenneth J. Brody | www.hvcomputer.com | |
| kenbrody/at\spamcop.net | www.fptech.com | #include <std_disclaimer.h> |
+-------------------------+--------------------+-----------------------------+
Don't e-mail me at: <mailto:Th*************@gmail.com>
Nov 15 '05 #7
Paminu wrote:
Simon Biber wrote:
Paminu wrote:
Is there something like system("PAUSE") for linux?


This is off-topic for comp.lang.c, you should have posted to
comp.unix.programmer. However, I have written a clone of the MS-DOS
pause command for Linux, and I can give you a link to it here.

http://members.optushome.com.au/sbiber/pause-1.0.tar.gz

It should work on other Unix-like systems too. Extract it, change to the
directory pause-1.0, and type
make
to build, and you can type
sudo make install
to copy the executable to /usr/local/bin


Ok done that but how do I use it in my source.c file??


If it's installed to a location that is in your PATH, then you need only
write system("pause"); in your source code. Note that Linux is
case-sensitive. It won't work if you use uppercase "PAUSE" in your
program but the program is called lowercase "pause".

You might want to create a directory under your home directory to store
your own commands, such as ~/bin
mkdir ~/bin
cp pause ~/bin

Then, add a line to your ~/.profile file to make sure that this
directory is always added to your path:
export PATH=$PATH:$HOME/bin

Log out and back in, and check that the directory was added to your
path. You can check your path list by typing
echo $PATH

--
Simon.
Nov 15 '05 #8
Paminu <ja******@asd.com> writes:
Is there something like system("PAUSE") for linux?


You don't want to do that.

While it's certainly possible, you
1) Don't want to use system(3) just to pause the program: create a
pause() function. "man 3 termios" to disable line buffering, or
check out [n]curses.
2) Need to ask yourself why you need this. If you are running on a
TTY or PTY, what is the benefit?

The only use I've seen for this in Windows programs is to work around
the horrible broken terminal emulator that comes with Windows. You
won't have that problem on Linux: the emulator is not going to close
when your program terminates, so this is pointless.
Regards,
Roger

--
Roger Leigh
Printing on GNU/Linux? http://gimp-print.sourceforge.net/
Debian GNU/Linux http://www.debian.org/
GPG Public Key: 0x25BFB848. Please sign and encrypt your mail.
Nov 15 '05 #9
In article <87************@hardknott.home.whinlatter.ukfsn.or g>,
Roger Leigh <${*******@invalid.whinlatter.ukfsn.org.invalid> wrote:
....
The only use I've seen for this in Windows programs is to work around
the horrible broken terminal emulator that comes with Windows.
Actually, I use the "pause" functionality (built-in in DOS/Windows; written
by me [and others] for Unix) frequently on both platforms for script
debugging.

And note, BTW, that some scripts are never (fully) debugged because the
data sources are unreliable. So, the pauses must be left in in perpetuity.
You won't have that problem on Linux: the emulator is not going to close
when your program terminates, so this is pointless.


(It is somewhat unclear to what you are really referring here, since Windows
doesn't really have an "emulator" - in the sense that Unix does. But,
leaving that aside for the moment...)

Actually, this *is* a problem under Unix, as frequent postings in the shell
group(s) attest. That is, people looking for something along the lines of:

xterm -e sh -c '...;echo "Press enter...";read x'

Nov 15 '05 #10
Roger Leigh <${*******@invalid.whinlatter.ukfsn.org.invalid> writes:
While it's certainly possible, you
1) Don't want to use system(3) just to pause the program: create a
pause() function.


Why is it a bad idea to use system() to pause a program? Waiting
for a keystroke from a user is hardly performance-intensive.

By the way, please don't use Unix manpage notation in
comp.lang.c. It confuses people who are not familiar with Unix,
because it looks like a function invocation.
--
"It would be a much better example of undefined behavior
if the behavior were undefined."
--Michael Rubenstein
Nov 15 '05 #11
Ben Pfaff <bl*@cs.stanford.edu> writes:
Roger Leigh <${*******@invalid.whinlatter.ukfsn.org.invalid> writes:
While it's certainly possible, you
1) Don't want to use system(3) just to pause the program: create a
pause() function.


Why is it a bad idea to use system() to pause a program? Waiting
for a keystroke from a user is hardly performance-intensive.


No, but it is extremely wasteful of system resources when you compare
the cost of starting a whole new program to wait for a keypress
compared with doing it yourself in just a few lines of code.
--
Roger Leigh
Printing on GNU/Linux? http://gimp-print.sourceforge.net/
Debian GNU/Linux http://www.debian.org/
GPG Public Key: 0x25BFB848. Please sign and encrypt your mail.
Nov 15 '05 #12

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
by: Danny Anderson | last post by:
Hola! I am working on a program where I am including a library that came with my numerical methods textbook. The "util.h" simply includes a large number of files. I had to change the util.h...
4
by: Kerwin Cabrera | last post by:
I am writing a console application and I would like to put a "Press any key..." message once the program is done executing. Currently, when it executes it returns to the prompt. I have tried...
34
by: Frederick Gotham | last post by:
Is the domestic usage of the C "for" loop inefficient when it comes to simple incrementation? Here's a very simple program that prints out the bit-numbers in a byte. #include <stdio.h> #include...
14
by: Chen Shusheng | last post by:
CSS white here: Simply strange, I found "define" can not work with "malloc". Together my complier will say "parse error". Could anyone tell me why? ------------------------- #define MAX 10000...
33
by: Chen shuSheng | last post by:
I have a code: --------------------------- #include <iostream.h> #include <stdlib.h> int main() { int max=15; char line; getline(line,max); system("PAUSE");
23
by: mahesh | last post by:
Hi all, I have following code that is supposed to increase the power by specified value. int main() { system("cls"); int i, exponent; double base; double new_base=0.0;
5
by: CoderMarc | last post by:
Hi, I can not get the system pause to work in a simple program. Here is my program below: // i/o example #include <iostream> using namespace std; int main ()
12
by: kevineller794 | last post by:
I want to make a split string function, but it's getting complicated. What I want to do is make a function with a String, BeginStr and an EndStr variable, and I want it to return it in a char...
0
by: jorgetheawesome | last post by:
Hi! I was writing a program, and for debugging, used the system("pause") command. I am running Windows XP. Its an MS-DOS app, programmed in Dev-C++. But the program, when compiled, runs...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
1
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated ...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.