Page 1 of 1

shellscript: Editierbarer Vorgabewert im Prompt - Wie?

Posted: 2007-07-29 10:02
by tomotom
Ich möchte innerhalb eines scriptes den Wert einer Varialen ändern. Die Variable soll nicht überschrieben werden, sondern als editierbarer Vorgabewert im Prompt zur Verfügung stehen. Mit read -p test bekomme ich einen Promt, kann aber keinen editierbaren Vorgabewert setzen.

So hatte ich mir das gewünscht

Code: Select all

a=/home/bla/test/ja/nein/2/3/4/eo/xy/jkls
read -p "Vorgabe ändern: " $a a1
Es geht aber nicht. Ich wüßte gerne wie ich so etwas mache.

Re: shellscript: Editierbarer Vorgabewert im Prompt - Wie?

Posted: 2007-07-29 11:30
by Joe User
Was Du vorhast, geht zumindest mit bash nicht.

Re: shellscript: Editierbarer Vorgabewert im Prompt - Wie?

Posted: 2007-07-29 11:39
by tomotom
Joe User wrote:Was Du vorhast, geht zumindest mit bash nicht.
:(

Wie würde es gehen?

Re: shellscript: Editierbarer Vorgabewert im Prompt - Wie?

Posted: 2007-07-29 11:48
by Joe User
Mit bash geht nur:

Code: Select all

a=42
read -p "Answer of life? [$a] " b
if [ "$a" == "$b" ]; then
  echo "Correct answer"
else
  echo "Incorrect answer"
fi
Mit anderen Shells habe ich mich nicht ausreichend bescäftigt.

Re: shellscript: Editierbarer Vorgabewert im Prompt - Wie?

Posted: 2007-10-22 17:33
by Anonymous
oder

Code: Select all

a=/home/bla/test/ja/nein/2/3/4/eo/xy/jkls
read -p "Vorgabe ändern?:  (default= $a)>>" a1
if [ "$a" = "" ];then
a=/home/bla/test/ja/nein/2/3/4/eo/xy/jkls
fi


Re: shellscript: Editierbarer Vorgabewert im Prompt - Wie?

Posted: 2007-10-25 12:50
by datafreak
Man könnte ja auch folgendes machen:

Code: Select all

#!/bin/bash

test1="Hallo"
test2="du"
test3="da"

clear

echo "1: $test1"
echo "2: $test2"
echo "3: $test3"

read -p "Was willst du machen?:" TASTE

case $TASTE in
1)      echo $test1 ;;
2)      echo $test2 ;;
3)      echo $test3 ;;
*)      echo "Beende das Tool"; exit 0 ;;

esac

Also nur mal so als beispiel.