Aggiunta di voci di menu contestuali per azzerare i file?

1

Voglio essere in grado di azzerare facilmente (rendere i file 0, non riempire i file esistenti con 0) dal Finder selezionando i file dal Finder e selezionando un'azione dal menu del tasto destro. Ho esaminato le azioni di Automator disponibili, ma ho potuto solo capire come eliminare e ricreare i file, il che perderebbe qualsiasi attributo esistente. Come posso creare una voce di menu contestuale per azzerare i file?

    
posta rinzler 28.08.2011 - 19:38
fonte

2 risposte

3
  • Seleziona Esegui script shell
  • Utilizza il comando predefinito / bin / bash
  • Seleziona Passa input come argomenti
  • Immettere quanto segue nella casella di immissione del testo:

    for file in "$@"; do
        cat /dev/null > "$file"
    done
    

Possibili miglioramenti:

  • Visualizza richiesta di amministrazione se l'account utente non dispone delle autorizzazioni per modificare i file selezionati.
  • Se viene selezionata una directory, eseguire l'azione su tutti i file nella directory selezionata.
risposta data 29.08.2011 - 00:51
fonte
2

Automator è il modo migliore per trasformare rapidamente uno script di shell in un servizio. I servizi di ricerca sono disponibili come menu contestuale, quindi vorrei iniziare da lì.

PrendereunbrevescriptbashcomequestoetrasformarloinunserviziosonoduepiccolicambiamentiinAutomator.

forfiledoif[-f"$file" ]
    then :> "$file"
  fi
done

Cambia Passa l'input: a come argomenti invece di stdin e limita il servizio a Finder e file / cartelle. Ho salvato questo servizio come Tronca file ma puoi chiamarlo come preferisci.

    
risposta data 29.08.2011 - 06:35
fonte

Leggi altre domande sui tag