Installer la commande tronquer Ubuntu sur Mac OS X 10.7

10

Existe-t-il un moyen d'installer la commande tronquer d'Ubuntu sur Mac OS X 10.7 afin d'utiliser la commande dans le shell du terminal?

Raptor
la source
Qu'essayez-vous de faire?
quanta
J'ai un script shell qui s'assure de la fonction tronquée, que je veux essayer dans le Mac local.
Raptor

Réponses:

13

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
Alex Berry
la source
J'ai trouvé que tronquer dans homebrew est différent de la version Ubuntu. Il n'a pas d'indicateur d'option.
Raptor
Il y a aussi Fink: finkproject.org et Macports: macports.org que vous pouvez essayer avant de lancer la désinstallation de brew truncate.
Alex Berry
2
J'apprécierais également un vote positif, peu importe si cela a fonctionné pour vous, j'ai fourni une réponse valide à votre question :)
Alex Berry
Maintenant, en utilisant Yosemite, les problèmes suivants ont été résolus pour moi (en utilisant également le breuvage maison: magiclantern.fm/forum/index.php?topic=6407.0
msmafra
17

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.

Alex Yursha
la source
2
Cela devrait être la réponse acceptée.
fguillen
1
On dirait que truncateest à nouveau disponible dans Homebrew comme sa propre formule.
Navin
4

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.

Ian Mackinnon
la source
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?
Raptor
1
Pas autant que je sache. Vous devriez faire le calcul de la taille cible vous-même en lisant d'abord la taille du fichier et en soustrayant 100 octets.
Ian Mackinnon
0

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.

karmakaze
la source