GNU/Linux >> Linux Esercitazione >  >> Linux

Controlla se la dimensione del file è superiore a 1 MB utilizzando la condizione IF

Utilizzando find su un file specifico in $filepath :

if [ -n "$(find "$filepath" -prune -size +1000000c)" ]; then
    printf '%s is strictly larger than 1 MB\n' "$filepath"
fi

Questo usa find per interrogare il file specifico in $filepath per le sue dimensioni. Se la dimensione è maggiore di 1000000 byte, find stamperà il percorso del file, altrimenti non genererà nulla. Il -n test è vero se la stringa ha una lunghezza diversa da zero, che in questo caso significa che find ha prodotto qualcosa, che a sua volta significa che il file è più grande di 1 MB.

Non hai chiesto informazioni su questo:trovare tutti i file normali più grandi di 1 MB sotto un $dirpath e stampando un breve messaggio per ciascuno:

find "$dirpath" -type f -size +1000000c \
    -exec printf '%s is larger than 1 MB\n' {} +

Questi pezzi di codice dovrebbero essere portabili su qualsiasi Unix.

Nota anche che usando < o > in un test verificherà se le due stringhe coinvolte si ordinano in un modo particolare lessicograficamente. Questi operatori non eseguono confronti numerici. Per questo, usa -lt ("minore di"), -le ("minore o uguale a"), -gt ("maggiore di"), o -ge ("maggiore o uguale a"), -eq ("uguale a"), o -ne ("non uguale a"). Questi operatori eseguono confronti tra interi.


Linux
  1. Trova l'URL di un file

  2. Linux elimina il file con dimensione 0

  3. Come ottenere la dimensione di tar.gz nel file (MB) in python

  4. Come trovo la dimensione massima dello stack?

  5. trova i file che hanno un numero nel nome del file maggiore di

Utilizzo del file di configurazione SSH

Come trovare i file usando la riga di comando nel terminale Linux

Come trovare la dimensione totale di una directory in Linux

Come trovo la posizione MySQL my.cnf

qual è il comando più affidabile per trovare la dimensione effettiva di un file linux

come usare du per vedere i file più grandi di una dimensione di soglia