Shell-Benutzereingabe / Eingabe

7

Dies ist ein rohes Korn-Shell-Skript, das jemand anderes geschrieben hat. Ich weiß nicht viel über Shell-Syntax und ich bin mir nicht einmal sicher, ob das möglich ist.

Gibt es eine Möglichkeit für mich, diese Datei auszuführen und nach dem Datum gefragt zu werden, so dass ich nicht jedes Mal manuell in das Skript gehen und es jedes Mal ändern muss?

Ich möchte zum Beispiel den "1/12/09" durch eine Variable ersetzen, die von einer Benutzereingabeaufforderung stammt.

%Vor%     
CheeseConQueso 13.01.2009, 15:33
quelle

3 Antworten

17

Wenn Sie aufgefordert werden möchten (anstatt das Datum als Parameter zu übergeben), verwenden Sie die folgende Logik (oder etwas Ähnliches):

%Vor%

Diese Schleife wird weiterhin nach dem Datum fragen, bis der Benutzer etwas (anderes) als eine einfache RETURN eingibt.

Wenn Sie eine einfache Validierung hinzufügen möchten und eine Version von KSH, das ist KSH93 oder besser, machen Sie so etwas:

%Vor%

Weitere Informationen finden Sie unter auf der ksh93 man-Seite .

    
Brian Clapper 13.01.2009, 16:11
quelle
3

Im Allgemeinen können Sie von einer Shell-Skript-Befehlszeile aus auf Argumente wie:

zugreifen %Vor%

Sie können also das fest codierte Datum wie folgt ersetzen:

%Vor%

Und mach es wie

%Vor%     
Ali Afshar 13.01.2009 15:40
quelle
2

$ 1 ist das erste Befehlszeilenargument. Dies geht bis zu $ ​​9. In diesem Tutorial finden Sie eine grundlegende ksh-Syntax.

    
Scottie T 13.01.2009 15:38
quelle

Tags und Links