Есть ли способ установить команду усечения Ubuntu в Mac OS X 10.7, чтобы использовать команду в оболочке терминала?
Обновить:
По состоянию на март 2015 г. truncate
больше не доступен в Homebrew как отдельная формула.
Так как truncate
является частью GNU Coreutils, вы должны установить его в OS X с помощью следующей команды:
> brew install coreutils
После установки truncate
будет доступен под именем gtruncate
. Обратите внимание, что все программы из Coreutils будут доступны с префиксом g
.
На самом деле это не должно быть в Server Fault, возможно, Super User или Ask Different, но вы можете установить множество двоичных файлов с помощью homebrew, найденного здесь:
http://mxcl.github.com/homebrew/
Во-первых, вам нужно установить инструменты командной строки для Xcode, которые, вероятно, потребуют от вас покупки, если вы еще этого не сделали.
Как только вы это сделаете, запустите:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Чтобы установить homebrew, после его установки запустите:
brew install truncate
когда truncate
недоступен, вы часто можете использовать dd
вместо. Например.
Сделайте файл заполненным нулями:
dd if=/dev/zero of=/tmp/youroutputfile bs=1m count=50
Обрезать существующий файл:
dd if=yourinputfile of=/tmp/youroutputfile bs=1k count=1
Примечание: OS X dd
использует буквы нижнего регистра, где GNU dd
использует верхний регистр.
Следует обратить внимание на то, является ли усеченный файл тем же файлом или новым файлом с тем же именем. Это важно для файлов журнала, в которые все еще ведется запись или которые tail
изд.
:> file
Работает как на * nix, так и на macOS, чтобы обрезать файл на месте.