Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [Shell] Banale script di shell che non funziona!

    Ragazzi sto cercando di scrivere un banale script di shell che esegue un ls nella directory dello script e mi mostra a video se un file è una directory oppure no..
    In sostanza ho scritto un ciclo for con un if di controllo, ecco il codice:

    codice:
    for file in `ls`
    do
         if [ -f $file ]
         then
                echo $file" = file"
         else
                echo $file" = dir"
         fi
    done
    Il for funziona bene mi controlla tutto il contenuto ma mi stampa che tutti sono i file sono directory, insomma fa sempre l'else. Ho provato anche a cambiare il test del if con [ ! -d $file ] ma niente e come se per lui questo controllo non funzionasse correttamente. Dove sbaglio?
    Nella dir dello script ci sono file che non sono directory ovviamente, uno .txt uno .html e poi lo script stesso. Non so più che fare sinceramente

  2. #2
    codice:
    for i in `ls`
    do
       echo "$i"
       if test -d "$i"
       then
          echo "Directory"
       else
          echo "File"
       fi
    done

  3. #3
    Si ok grazie ho risolto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.