[LINUX] Regroupement d'expressions conditionnelles

Bonjour. Je posterai sur Kita pour la première fois. Je vous remercie.

Il s'agit d'une rédaction de mémo d'apprentissage du nouveau manuel Linux (SB Creative). Partagez ce que vous recherchez dans une impasse ou pour résoudre un problème.

P295 Vous avez appris "Regrouper des expressions conditionnelles".

[Mademoiselle] J'ai fait une erreur en écrivant une expression conditionnelle et en retirant le signe dollar en essayant de faire référence à une variable. Lorsqu'il s'agit de variables, il est facile de supprimer le signe dollar. Je veux être prudent.

Il s'agit d'une erreur -d "datadir".

if [ -d "datadir" -a \( "$datadir" = "/home/pc/myapp/295_data_group" -o "$datadir" = "/home/pc/295_data_group" \)  ]; then

Correctement ce -d "$ datadir"

if [ -d "$datadir" -a \( "$datadir" = "/home/pc/myapp/295_data_group" -o "$datadir" = "/home/pc/295_data_group" \)  ]; then

[Anglais] L'expression conditionnelle est «expression conditionnelle» en anglais. J'ai essayé d'exécuter le regroupement des expressions conditionnelles apprises sur cette page avec un script shell. Le nom du fichier est "295_conditional_expression_group.sh". Il est facile de vérifier si vous mettez le nombre de pages "295" dans le nom du fichier.

En recherchant des mots-clés techniques en anglais, j'ai pensé qu'il serait bon d'améliorer ma capacité de lecture en anglais. Dans ce livre, il existe de nombreuses situations où vous créez un fichier et essayez de l'exécuter, donc si vous recherchez les mots-clés techniques qui sont le thème en anglais et que vous les utilisez activement avec des noms de fichiers, des noms de variables et des noms de chemin Vous pouvez également améliorer vos compétences en anglais.

[Regroupement des expressions conditionnelles] Qu'est-ce que le regroupement d'expressions conditionnelles en premier lieu? Voici une analogie simple.

Il s'agit de l'expression conditionnelle et du traitement lorsqu'elle est vraie.

si votre portefeuille a plus de 10 000 yens. Et j'ai faim. Si c'est vrai echo Achetons des boules de riz. Exécuter.

Alors Lorsque vous n'avez que 900 yens dans votre portefeuille. Je n'achète pas de boulettes de riz. Quand je n'ai pas faim. Je n'achète pas de boulettes de riz.

Qu'est-ce que le regroupement d'expressions conditionnelles ici?

si vous avez 1000 yens ou plus dans votre portefeuille. Et (j'ai faim, ou il n'y a rien dans le réfrigérateur.) echo Achetons des boules de riz. Exécuter.

Cette.

Utilisez des parenthèses pour regrouper.

Lorsque vous n'avez que 800 yens dans votre portefeuille. Je n'achète pas de boulettes de riz. J'ai 1100 yens dans mon portefeuille, et quand j'ai faim, j'achète des boulettes de riz. Si vous avez 1100 yens dans votre portefeuille et qu'il n'y a rien dans le réfrigérateur, vous achèterez des boulettes de riz. Je n'achète pas de boulettes de riz quand j'ai 1100 yens dans mon portefeuille et quelque chose dans le réfrigérateur.

[code] C'est le script shell que j'ai créé.

Le contenu est le suivant. Associez un répertoire à une variable. S'il existe un répertoire et que le répertoire correspond à l'un des deux chemins spécifiés Il imprime la chaîne indiquant qu'il existe un répertoire et non.

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	

Recommended Posts

Regroupement d'expressions conditionnelles
Style Lambda