Sponsored Content
Full Discussion: How to add a Y/N option?
Top Forums Shell Programming and Scripting How to add a Y/N option? Post 302970618 by kshji on Saturday 9th of April 2016 03:54:24 AM
Old 04-09-2016
Here is two examples. Also
Code:
read -p

is usable.

Using read -n 1.
Code:
#!/bin/ksh
# bash/ksh93/zsh/... but not dash (=posix)

# if read key ENTER, bash return newline and ksh return carriage return
cr=$'\r'  # ENTER key ksh
while printf "Continue:Y\b"
      read -n 1 response
      printf "\r                  \n"
      case "$response" in
                $cr|Y|y|"") response="Y" ;; # default = ENTER
                n|N) reponse="N" ;;
                *) response="N" ;;
      esac
      [ "$response" = "Y" ]
do
                echo "Do ..."
                date
                echo "..."
done

echo 'Goodbye.'

Using dd = take dump from stdin, 1 char.
Code:
# keypressed, read 1 char from stdin using dd
# works using any sh-shell
readkbd() {
  stty -icanon -echo
  dd bs=1 count=1 2>/dev/null
  stty icanon echo
}

while printf "Continue:Y\b"
      response=$(readkbd)
      printf "\r                  \n"
      case "$response" in
                Y|y|"") response="Y" ;; # default = ENTER
                n|N) reponse="N" ;;
                *) response="N" ;;
      esac
      [ "$response" = "Y" ]
do
                echo "Do ..."
                date
                echo "..."
done

echo 'Goodbye.'

 

9 More Discussions You Might Find Interesting

1. Windows & DOS: Issues & Discussions

How to add Win2000, Win Me option to Lilo menu?

Hi All, I have installed RH Linux 7.1, windows 2000 and windows ME in the same machine. There are two booting menu: Lilo: Linux Dos Dos : Windows2000 WindowsME If I want to use windowME, I need to boot lilo and choose dos and final choose windows ME. Have any... (3 Replies)
Discussion started by: wilsonchan1000
3 Replies

2. Shell Programming and Scripting

trying to add an option to view before executing?

I am very new to scripting. I have the following script: for i in `ls -1 | grep $1 | grep -v $2` do x=`echo $i | sed 's/\.New/\.Old/g'` echo mv $i DONE/$x done This is taking files from the directory I am in and changing the name from .New to .Old and then echoing the command to move... (2 Replies)
Discussion started by: llsmr777
2 Replies

3. Shell Programming and Scripting

option followed by : taking next option if argument missing with getopts

Hi all, I am parsing command line options using getopts. The problem is that mandatory argument options following ":" is taking next option as argument if it is not followed by any argument. Below is the script: while getopts :hd:t:s:l:p:f: opt do case "$opt" in -h|-\?)... (2 Replies)
Discussion started by: gurukottur
2 Replies

4. UNIX for Dummies Questions & Answers

How to add the landscape option...

to an existing print que? (1 Reply)
Discussion started by: NycUnxer
1 Replies

5. Shell Programming and Scripting

How do I add the option to change the path in a menu?

How do I add the option to change the path in a menu? I have this script. The user chooses a number and had the option of doing something, looking for log files etc. There is a possibility they might want to look at a different path other than what I have given them such as... (2 Replies)
Discussion started by: taekwondo
2 Replies

6. Shell Programming and Scripting

recently introduced to the newer option for find...does an older option exist?

To find all the files in your home directory that have been edited in some way since the last tar file, use this command: find . -newer backup.tar.gz Is anyone familiar with an older solution? looking to identify files older then 15mins across several directories. thanks, manny (2 Replies)
Discussion started by: mr_manny
2 Replies

7. Shell Programming and Scripting

Interactive script to give user option of what text to add

Hello all, I have created a script that will remove the first two lines of one text file (body.txt) and then add the text from a different text file (header.txt) directly to the beginning of the freshly modified body.txt file. It is as follows: #!/bin/bash ## This script will add a header... (2 Replies)
Discussion started by: marcozd
2 Replies

8. Ubuntu

Add Option To Right Menu

hey all, I already installed nautilus-actions now , I want to add "print path" script(option) to the right context menu!.. I did : http://img853.imageshack.us/img853/6973/59818245.png http://img847.imageshack.us/img847/8758/37217230.png the script print located in... (2 Replies)
Discussion started by: eawedat
2 Replies

9. Shell Programming and Scripting

Add option to fstab

I need as script (awk/sed?) to add noatime option to fstab. It should append ,noatime to whatever is in column 4 if noatime isn't already there, leaving comments alone. input: # /etc/fstab # Created by anaconda on Mon Oct 31 20:44:41 2011 # # Accessible filesystems, by reference, are... (5 Replies)
Discussion started by: pblumenthal
5 Replies
ATF-SH(1)						    BSD General Commands Manual 						 ATF-SH(1)

NAME
atf-sh [-s shell] -- interpreter for shell-based test programs SYNOPSIS
atf-sh script DESCRIPTION
atf-sh is an interpreter that runs the test program given in script after loading the atf-sh(3) library. atf-sh is not a real interpreter though: it is just a wrapper around the system-wide shell defined by ATF_SHELL. atf-sh executes the inter- preter, loads the atf-sh(3) library and then runs the script. You must consider atf-sh to be a POSIX shell by default and thus should not use any non-standard extensions. The following options are available: -s shell Specifies the shell to use instead of the value provided by ATF_SHELL. ENVIRONMENT
ATF_LIBEXECDIR Overrides the builtin directory where atf-sh is located. Should not be overridden other than for testing purposes. ATF_PKGDATADIR Overrides the builtin directory where libatf-sh.subr is located. Should not be overridden other than for testing purposes. ATF_SHELL Path to the system shell to be used in the generated scripts. Scripts must not rely on this variable being set to select a specific interpreter. EXAMPLES
Scripts using atf-sh(3) should start with: #! /usr/bin/env atf-sh Alternatively, if you want to explicitly choose a shell interpreter, you cannot rely on env(1) to find atf-sh. Instead, you have to hardcode the path to atf-sh in the script and then use the -s option afterwards as a single parameter: #! /path/to/bin/atf-sh -s/bin/bash ENVIRONMENT
ATF_SHELL Path to the system shell to be used in the generated scripts. SEE ALSO
atf-sh(3) BSD
September 27, 2014 BSD
All times are GMT -4. The time now is 04:18 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy