Réponses:
Cela ne devrait pas vraiment être dans Server Fault, probablement Super User ou Ask Different, mais vous pouvez installer beaucoup de binaires en utilisant homebrew, que vous trouverez ici:
http://mxcl.github.com/homebrew/
Tout d'abord, vous devrez installer des outils de ligne de commande pour Xcode, ce qui vous obligera probablement à l'acheter si vous ne l'avez pas déjà fait.
Une fois que vous avez fait cela, exécutez:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Pour installer homebrew, puis quand il est installé, exécutez:
brew install truncate
Mettre à jour:
Depuis mars 2015, il truncaten'est plus disponible en Homebrew en tant que formule autonome.
Comme cela truncatefait partie de GNU Coreutils, vous devez l'installer sur OS X avec la commande suivante:
> brew install coreutils
Après l'installation truncatesera disponible sous le nom gtruncate. Notez que tous les programmes de Coreutils seront disponibles avec le préfixe g.
truncateest à nouveau disponible dans Homebrew comme sa propre formule.
Lorsque truncaten'est pas disponible, vous pouvez souvent l'utiliser à la ddplace. Par exemple.
Créez un fichier plein de zéros:
dd if=/dev/zero of=/tmp/youroutputfile bs=1m count=50
Tronquer un fichier existant:
dd if=yourinputfile of=/tmp/youroutputfile bs=1k count=1
Remarque: OS X ddutilise des lettres unitaires en minuscules où GNU ddutilise des majuscules.
ddpeut presque atteindre l'objectif. Peut ddtronquer à partir de la fin du fichier? En lisant le fichier man de dd, je sais qu'il ne peut être lu qu'au début du fichier. Et si je supprimais les 100 derniers octets du fichier?
Un point à considérer est de savoir si le fichier tronqué est le même fichier ou un nouveau fichier avec le même nom. Important pour les fichiers journaux qui sont encore en cours d'écriture ou en cours d' tailédition.
:> file
Fonctionne à la fois sur * nix et macOS pour tronquer un fichier sur place.