unary operator expected

Warum Debian? Was muss ich vorher wissen? Wo geht's nach der Installation weiter?
Antworten
Benutzeravatar
kikosanjuan
Beiträge: 1
Registriert: 22.11.2017 18:47:40

unary operator expected

Beitrag von kikosanjuan » 22.11.2017 22:07:21

Code: Alles auswählen

#!/bin/bash

for WFILE in $(sudo ls -lR / | grep .sh);
  do
    if [ -l "$WFILE" ];
     then
       echo '$WFILE' Is a Directory
     else 
       if [ -d "$WFILE" ];
        then
        echo "$WFILE" is a link
       fi
    fi
  done
 fehlermeldung: script.sh: line 5: [: -l: unary operator expected
was habe ich falsch gemacht?
gruss
kikosanjuan
Zuletzt geändert von TRex am 23.11.2017 09:08:49, insgesamt 2-mal geändert.
Grund: Code-Tags

tobo
Beiträge: 681
Registriert: 10.12.2008 10:51:41

Re: unary operator expected

Beitrag von tobo » 22.11.2017 22:26:42

Erwartet wrid ein unärer Operator, also ein Operator (-l) mit einem Operanden ($WFILE"); in deinem speziellen Fall. Der Bash ist -l unbekannt. Was es da so gibt schaust du unter man bash und dem Stichwort "CONDITIONAL EXPRESSIONS".

Benutzeravatar
niemand
Beiträge: 13262
Registriert: 18.07.2004 16:43:29

Re: unary operator expected

Beitrag von niemand » 22.11.2017 22:33:23

non serviam.

Benutzeravatar
Meillo
Moderator
Beiträge: 5502
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: unary operator expected

Beitrag von Meillo » 24.11.2017 07:36:31

Verwende besser `elif' fuer mehrere gleichwertige Tests.
Use ed(1) once in a while!

Benutzeravatar
Livingston
Beiträge: 309
Registriert: 04.02.2007 22:52:25
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.0.0.1

Re: unary operator expected

Beitrag von Livingston » 24.11.2017 14:06:59

Außerdem 3 Semikola zu viel.

Antworten