Hallo. Ich werde zum ersten Mal bei Kita posten. Vielen Dank.
Es ist ein Memo über das Lernen des neuen Linux-Lehrbuchs (SB Creative). Teilen Sie mit, wonach Sie in einem Deadlock gesucht haben oder um ein Problem zu lösen.
P295 Sie haben "Gruppieren von bedingten Ausdrücken" gelernt.
[Fräulein] Als ich einen bedingten Ausdruck schrieb und versuchte, auf eine Variable zu verweisen, habe ich den Fehler gemacht, das Dollarzeichen herauszuziehen. Wenn Sie sich auf Variablen beziehen, können Sie das Dollarzeichen leicht entfernen. Ich möchte vorsichtig sein.
Dies ist ein Fehler -d "Datenverzeichnis".
if [ -d "datadir" -a \( "$datadir" = "/home/pc/myapp/295_data_group" -o "$datadir" = "/home/pc/295_data_group" \) ]; then
Richtig dieses -d "$ datadir"
if [ -d "$datadir" -a \( "$datadir" = "/home/pc/myapp/295_data_group" -o "$datadir" = "/home/pc/295_data_group" \) ]; then
[Englisch] Der bedingte Ausdruck ist "bedingter Ausdruck" in Englisch. Ich habe versucht, die Gruppierung der auf dieser Seite erlernten bedingten Ausdrücke mit einem Shell-Skript auszuführen. Der Dateiname lautet "295_conditional_expression_group.sh". Es ist leicht zu überprüfen, ob Sie die Anzahl der Seiten "295" in den Dateinamen einfügen.
Als ich nach technischen Stichwörtern auf Englisch suchte, dachte ich, es wäre gut, meine Lesefähigkeit auf Englisch zu verbessern. In diesem Buch gibt es viele Situationen, in denen Sie eine Datei erstellen und versuchen, sie auszuführen. Wenn Sie also die technischen Schlüsselwörter nachschlagen, die das Thema auf Englisch sind, und sie aktiv mit Dateinamen, Variablennamen und Pfadnamen verwenden. Sie können auch Ihre Englischkenntnisse verbessern.
[Bedingte Ausdrücke gruppieren] Was ist eine bedingte Ausdrucksgruppierung überhaupt? Hier ist eine einfache Analogie.
Dies ist der bedingte Ausdruck und die Verarbeitung, wenn er wahr ist.
wenn Ihre Brieftasche mehr als 10.000 Yen hat. Und ich bin hungrig. Wenn das wahr ist echo Kaufen wir Reisbällchen. Ausführen.
Damit Wenn Sie nur 900 Yen in Ihrer Brieftasche haben. Ich kaufe keine Reisbällchen. Wenn ich keinen Hunger habe. Ich kaufe keine Reisbällchen.
Was ist hier eine bedingte Ausdrucksgruppierung?
wenn Sie 1000 Yen oder mehr in Ihrer Brieftasche haben. Und (ich habe Hunger oder es ist nichts im Kühlschrank.) echo Kaufen wir Reisbällchen. Ausführen.
Dies.
Verwenden Sie zum Gruppieren Klammern.
Wenn Sie nur 800 Yen in Ihrer Brieftasche haben. Ich kaufe keine Reisbällchen. Ich habe 1100 Yen in meiner Brieftasche und wenn ich hungrig bin, kaufe ich Reisbällchen. Ich kaufe Reisbällchen, wenn ich 1100 Yen in meiner Brieftasche und nichts im Kühlschrank habe. Ich kaufe keine Reisbällchen, wenn ich 1100 Yen in meiner Brieftasche und etwas im Kühlschrank habe.
[Code] Dies ist das Shell-Skript, das ich erstellt habe.
Der Inhalt ist wie folgt. Verknüpfen Sie ein Verzeichnis mit einer Variablen. Wenn es ein Verzeichnis gibt und das Verzeichnis mit einem der beiden angegebenen Pfade übereinstimmt Es gibt die Zeichenfolge aus, dass ein Verzeichnis vorhanden ist und nicht.
295_conditional_expression_group.sh
#!/bin/bash
datadir=/home/pc/myapp/295_data_group
if [ -d "$datadir" -a \( "$datadir" = "/home/pc/myapp/295_data_group" -o "$datadir" = "/home/pc/295_data_group" \) ]; then
echo "$datadir directory exist"
else
echo "$datadir directory does not exist"
fi