Installieren Sie den Ubuntu-Befehl zum Abschneiden unter Mac OS X 10.7


10

Gibt es eine Möglichkeit, Ubuntus Befehl zum Abschneiden unter Mac OS X 10.7 zu installieren, um den Befehl in der Terminal-Shell zu verwenden?


Was versuchst du zu machen?
Quanten

Ich habe ein Shell-Skript, das die Funktion zum Abschneiden sicherstellt und das ich auf einem lokalen Mac ausprobieren möchte.
Raptor

Antworten:


13

Dies sollte eigentlich nicht in Server Fault sein, wahrscheinlich Super User oder Ask Different, aber Sie können viele Binärdateien mithilfe von Homebrew installieren, das Sie hier finden:

http://mxcl.github.com/homebrew/

Zunächst müssen Sie Befehlszeilentools für Xcode installieren, für die Sie wahrscheinlich einen Kauf tätigen müssen, wenn Sie dies noch nicht getan haben.

Sobald Sie dies getan haben, führen Sie Folgendes aus:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Um Homebrew zu installieren, führen Sie nach der Installation Folgendes aus:

brew install truncate

Ich fand, dass das Abschneiden in Homebrew anders ist als in der Ubuntu-Version. Es gibt kein Optionsflag.
Raptor

Es gibt auch Fink: finkproject.org und Macports: macports.org, die Sie ausprobieren können, bevor Sie dies tun.
Alex Berry

2
Würde mich auch über eine positive Bewertung freuen, da ich, unabhängig davon, ob es für Sie funktioniert hat, eine gültige Antwort auf Ihre Frage gegeben habe :)
Alex Berry

Mit Yosemite wurde nun Folgendes für mich gelöst (auch mit Home Brew
msmafra

17

Aktualisieren:

Ab März 2015 truncateist Homebrew nicht mehr als eigenständige Formel verfügbar.

Als truncateTeil von GNU Coreutils sollten Sie es unter OS X mit dem folgenden Befehl installieren:

> brew install coreutils

Nach der Installation truncatewird unter dem Namen verfügbar sein gtruncate. Beachten Sie, dass alle Programme von Coreutils mit dem Präfix verfügbar sind g.


2
Dies sollte die akzeptierte Antwort sein.
Fguillen

1
Sieht so aus, truncateals wäre Homebrew wieder als eigene Formel verfügbar.
Navin

4

Wenn truncatenicht verfügbar, können Sie ddstattdessen häufig verwenden . Z.B.

Machen Sie eine Datei voller Nullen:

dd if=/dev/zero of=/tmp/youroutputfile bs=1m count=50

Schneiden Sie eine vorhandene Datei ab:

dd if=yourinputfile of=/tmp/youroutputfile bs=1k count=1

Hinweis: Das OS X ddverwendet Kleinbuchstaben, während GNU Großbuchstaben ddverwendet.


ddkann fast das Ziel erreichen. Kann ddvom Ende der Datei abgeschnitten werden? Wenn ich aus der Man-Datei von lese dd, weiß ich, dass sie nur von Anfang an gelesen werden kann. Wie wäre es, wenn ich die letzten 100 Bytes aus der Datei lösche?
Raptor

1
Soweit ich weiß, nicht. Sie müssten die Zielgrößenberechnung selbst durchführen, indem Sie zuerst die Dateigröße lesen und 100 Byte abziehen.
Ian Mackinnon

0

Ein Gesichtspunkt ist, ob die abgeschnittene Datei dieselbe Datei oder eine neue Datei mit demselben Namen ist. Von Bedeutung für Protokolldateien, in die noch geschrieben oder tailbearbeitet wird.

:> file

Funktioniert sowohl unter * nix als auch unter macOS, um eine Datei direkt abzuschneiden.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.