Sponsored Content
Top Forums Shell Programming and Scripting Control cursor position also at bottom of window Post 303043713 by Chubler_XL on Tuesday 4th of February 2020 09:44:24 PM
Old 02-04-2020
I think the carriage return at the end of the input is scrolling up the terminal. How about prompting for a single Y or N response (no need to CR):

Code:
#!/bin/bash
  
# -----
# function: askYesOrNo
# purpose : ask question passed as $1
# return  : 0 if answer was y or Y,
#           1 otherwise
# -----
function askYesOrNo {
        printf "\e[s"                           # save cursor x-pos

        while true ; do
                printf "\e[1;31;47m$1 [Y|n]\e[0m "      # print $1 in color
                read -n 1 answer
                case $answer in
                   Y|y|N|n) break;;
                esac
                # restore cursor x-pos
               printf "\e[u"
        done
        # restore cursor x-pos, erase rest of line
        printf "\e[u\e[K"
        # set return status
        [ "${answer^}" == "Y" ]
}


for (( i = 100, max = 110; i <= max; i++ )) ; do
        printf " %d\n" $i
        if [ $i -eq $max ] ; then
                if askYesOrNo "Do you wish to continue?" ; then
                        (( max += 10 ))
                fi
        fi
done

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Get the cursor position

Hello, Is there a way to get the current cursor position? I know "tput sc" saves it. Is there a way to find out the value saved? Thanks. (0 Replies)
Discussion started by: bestbuyernc
0 Replies

2. Programming

Cursor Global Position

Hello all, How can i get the global position of the cursor? (i'm using c language, and suse 10.1 linux) Thanks. (3 Replies)
Discussion started by: boogy
3 Replies

3. HP-UX

Command to know the terminal cursor position

Dear all, How can i get the current cursor position..is thr any command to find the same? Thanks in Advance Aneesh (3 Replies)
Discussion started by: aneesha
3 Replies

4. Programming

get terminal width and cursor position

I want to get the screen width and cursor positions. When I used curses, all the screen content was cleared. So Can I use curses to get the screen size without clearing anything in the window? Or is there any other alternative??? I can use only C or C++. (0 Replies)
Discussion started by: Sreejesh.S
0 Replies

5. Shell Programming and Scripting

Changing cursor position using shell script

Hi, Pleae help me on this. Normally, when we say read username, the cursor will come in the first position of next line, but I want the output of the below Normal usage ------------- please enter username: _ I want like the below ---------------------- please enter username: ... (2 Replies)
Discussion started by: balamv
2 Replies

6. UNIX and Linux Applications

read position mouse cursor

Hi to all! I'm a teacher of maths and physics in an italian high school in Milan, Italy. I need a simple program that read the position of mouse cursor in function of time and write the coordinates in a text file. The time resolution have to be something like 1/10 sec or better (I have to know... (2 Replies)
Discussion started by: chris75
2 Replies

7. UNIX for Dummies Questions & Answers

Cursor position

Is there a way of finding the current cursor position (line & column) within AIX (4 Replies)
Discussion started by: gefa
4 Replies

8. Shell Programming and Scripting

ksh - moving cursor position

hi all, am trying to modify a ksh script to group server names together depending on the cluster they sit in. currently the script does a find . -name '*.pid' to find all running servers and prints out their pids and names. current output looks something like this : serverA ... (1 Reply)
Discussion started by: cesarNZ
1 Replies

9. Shell Programming and Scripting

Getting the cursor position

I need to get the cursor position, and put it inside a variable. Problem is, i don't have the tput command, or ncurses. Apparently I was supposed to try the following: echo -e '\E But I don't get a value or anything. Please help. (3 Replies)
Discussion started by: tinman47
3 Replies

10. Shell Programming and Scripting

Holding cursor position on one line

Hi there. It's easier to explain this with a pseudo code, I hope this makes sense: var1=hello echo $var1 some kind of loop echo loop counter done How do I hold the cursor position immediately behind the last output so I'd get something like: hello123456789 DOS used to use ","... (5 Replies)
Discussion started by: MuntyScrunt
5 Replies
RRDp(3) 						User Contributed Perl Documentation						   RRDp(3)

NAME
RRDp - Attach RRDtool from within a perl script via a set of pipes; SYNOPSIS
use RRDp RRDp::start path to RRDtool executable RRDp::cmd rrdtool commandline $answer = RRD::read $status = RRD::end $RRDp::user, $RRDp::sys, $RRDp::real, $RRDp::error_mode, $RRDp::error DESCRIPTION
With this module you can safely communicate with the RRDtool. After every RRDp::cmd you have to issue an RRDp::read command to get RRDtools answer to your command. The answer is returned as a pointer, in order to speed things up. If the last command did not return any data, RRDp::read will return an undefined variable. If you import the PERFORMANCE variables into your namespace, you can access RRDtool's internal performance measurements. use RRDp Load the RRDp::pipe module. RRDp::start path to RRDtool executable start RRDtool. The argument must be the path to the RRDtool executable RRDp::cmd rrdtool commandline pass commands on to RRDtool. Check the RRDtool documentation for more info on the RRDtool commands. Note: Due to design limitations, RRDp::cmd does not support the "graph -" command - use "graphv -" instead. $answer = RRDp::read read RRDtool's response to your command. Note that the $answer variable will only contain a pointer to the returned data. The reason for this is, that RRDtool can potentially return quite excessive amounts of data and we don't want to copy this around in memory. So when you want to access the contents of $answer you have to use $$answer which dereferences the variable. $status = RRDp::end terminates RRDtool and returns RRDtool's status ... $RRDp::user, $RRDp::sys, $RRDp::real these variables will contain totals of the user time, system time and real time as seen by RRDtool. User time is the time RRDtool is running, System time is the time spend in system calls and real time is the total time RRDtool has been running. The difference between user + system and real is the time spent waiting for things like the hard disk and new input from the Perl script. $RRDp::error_mode and $RRDp::error If you set the variable $RRDp::error_mode to the value 'catch' before you run RRDp::read a potential ERROR message will not cause the program to abort but will be returned in this variable. If no error occurs the variable will be empty. $RRDp::error_mode = 'catch'; RRDp::cmd qw(info file.rrd); print $RRDp::error if $RRDp::error; EXAMPLE
use RRDp; RRDp::start "/usr/local/bin/rrdtool"; RRDp::cmd qw(create demo.rrd --step 100 DS:in:GAUGE:100:U:U RRA:AVERAGE:0.5:1:10); $answer = RRDp::read; print $$answer; ($usertime,$systemtime,$realtime) = ($RRDp::user,$RRDp::sys,$RRDp::real); SEE ALSO
For more information on how to use RRDtool, check the manpages. AUTHOR
Tobias Oetiker <tobi@oetiker.ch> perl v5.16.3 2014-06-10 RRDp(3)
All times are GMT -4. The time now is 03:54 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy