Veröffentlicht 15. Januar 20196 j Ich lerne gerade für eine Prüfung und finde keinen command der mir erlaubt einen Pfad nach der existenz zu prüfen. ich hab das hier unten ausprobiert mit "test" aber dies funktioniert wohl nicht. kann mir bitte jemand weiterhelfen? if test $homepath -eq true then echo "Path is Here" else echo "Path is not Here" fi
15. Januar 20196 j Autor Lösung: if find $homepath then echo "Path is Here" else echo "Path is not Here" fi
15. Januar 20196 j Schau hier: http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html bzw. http://wiki.bash-hackers.org/commands/classictest Das was du brauchst ist "-d" ( True if FILE exists and is a directory. ) if test -d $homepath das "-eq" ist hier fehl am Platz, das wird für integers verwendet. Du verwendest jedoch einen string, da könntest du ggf. mit "=" arbeiten, aber dann würdest du halt mit dem Wort (string) "true" vergleichen. Der Test "if test -d $homepath" prüft, ob das Verzeichnis $homepath vorhanden ist - falls ja, wird ein returm code mit dem Wert 0 (= true) zurückgegeben, und die Bedingung ist erfüllt. Das hier geht auch: if [ -d $homepath ] (Achte auf die beiden Leerzeichen in den eckigen Klammern am Anfang + Ende! Das kenne ich eher als "gängige" Schreibweise. Aber das "[" ist im Prinzip nur ein anderer Ausdruck für "test", Erklärung siehe zweiter Link).
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.