Терминал OS X «должен иметь» [закрыт]

Я только что прочитал с удовольствием и многому научился из этих вопросов:

Но я не нашел в этих некоторых моих избранных инструментах, которые я использую ежедневно , и я думаю, что это потому, что это OSX /Terminal предназначенные инструменты >, не укладываясь хорошо в вышеуказанные вопросы.

Мои избранные, по порядку предпочтения: oh-my-zsh , homebrew (но также и macports), janus ...

Эти общие инструменты:

  • Терминал : установка и использование
  • OSX Предполагаемый : brew, git нет!
  • Easy Install : один вкладыш, т.е. git clone; wget ... и т. д.
  • Расширяемый : возможно, есть расширения или простой API (например, oh-my-zsh с плагинами, варить с формулами, janus с подключенными vim плагинами ...)
  • Часто открытый исходный код, бесплатный, размещенный на github, сценарий, в основном (но не только!) с ruby ​​...

Знаете ли вы какие-либо другие подобные обязательные инструменты? Я хотел бы открыть для себя новые!

Пожалуйста, укажите только одну утилиту за каждый ответ. Кроме того, не добавляйте дубликаты. Сначала проверьте перед публикацией. Если вы видите дубликат, любезно передайте ответ и сообщите автору, оставив комментарий.

109 голосов | спросил 7 revs, 4 users 88%
Vincent
1 Jam1000000amThu, 01 Jan 1970 03:00:00 +030070 1970, 03:00:00

25 ответов


92

Homebrew

  

Отсутствует менеджер пакетов для OS X.

Это потрясающий менеджер пакетов, очень легкий и простой в использовании. Принцип KIS, который заставляет меня думать об архиникс. Его сообщество является большим и очень активным.

(см. также macports, которые варят не полностью заменяют, я предпочитаю устанавливать пакеты с варкой, но некоторые сложные из них только для macports)

См. также команду brew tap, которая предоставляет некоторые недостающие формулы, которые могут быть полезны, например, когда вам нужна последняя версия php> brew tap josegonzalez/php.

(У Homebrew есть политика не замещения системных компонентов, но эй, иногда вам нужно)

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
62

iTerm2 (бесплатно)

Упоминается в комментариях, но это essential , поэтому для выделения ...

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
37

Ack (бесплатно)

Отлично подходит для поиска текстовых файлов, вам больше не придется использовать комбинацию find /grep.


Ack имеет два замечательных плагина интеграции для основных текстовых редакторов OSX:

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
33

oh-my-zsh (бесплатно)

  

Несколько функций, автозаполняющих помощников и т. д., которые заставляют вас кричать ...

     
    

â € œOH MY ZSHELL! â €

  

Сделал меня любимой оболочкой, когда я просто использовал ее , когда мне пришлось ... Zsh - это «bash on steroids», с oh-my-zsh и всеми его плагинами, многие особенности OSX, оболочка намного удобнее и мощнее ... О, темы тоже довольно крутые.


Также стоит взглянуть на некоторые альтернативы /дополнения к основанию zsh:

  • prezto Это полная переработка oh-my-zsh, чистая и более активная, теперь использующая ее:)
  • zsh-users (бесплатно) Некоторые очень приятные вещи zsh (люблю подсветку синтаксиса)
  • zcm (бесплатно) zsh менеджер конфигурации (вдохновленный oh-my-zsh)
ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
32

lolcat (бесплатно)

lolcat

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
24

Функции оболочки

Я не могу жить без этого.

  • Одна команда для их обновления.

    update() {
        local brew="brew update; brew upgrade;"
        local gisty="gisty pull_all; gisty sync_delete"
        local gem="gem update;"
        local pip="pip freeze --local | grep -v '^\-e' | cut -d = -f 1  | xargs pip install -U -q"
        sh -c $brew$gisty; sudo sh -c $gem$pip
    }
    

    Очевидно, вы можете добавить больше команд в соответствии с используемыми вами менеджерами пакетов. Это сделано мной.

  • Измените каталог на текущий каталог Finder

    cdf() {
        target=`osascript -e 'tell application "Finder" to if (count of Finder windows) > 0 then get POSIX path of (target of front Finder window as text)'`
        if [ "$target" != "" ]; then
            cd "$target"; pwd
        else
            echo 'No Finder window found' >&2
        fi
    }
    

    cdf, чтобы открыть каталог Finder в терминале и open ., чтобы открыть в Finder каталог каталога каталога.

    Источник

  • Получить цвета на страницах руководства

    man() {
        env \
        LESS_TERMCAP_mb=$(printf "\e[1;31m") \
        LESS_TERMCAP_md=$(printf "\e[1;31m") \
        LESS_TERMCAP_me=$(printf "\e[0m") \
        LESS_TERMCAP_se=$(printf "\e[0m") \
        LESS_TERMCAP_so=$(printf "\e[1;44;33m") \
        LESS_TERMCAP_ue=$(printf "\e[0m") \
        LESS_TERMCAP_us=$(printf "\e[1;32m") \
        man "[email protected]"
    }
    

    Источник

  • Использовать закрытый ключ RSA в git

    git(){
        trap 'rm -f /tmp/.git_ssh.$$' 0
        SSH_KEY="~/.ssh/id_rsa"
        echo "ssh -i $SSH_KEY \[email protected]" > /tmp/.git_ssh.$$
        chmod +x /tmp/.git_ssh.$$
        export GIT_SSH=/tmp/.git_ssh.$$
        [ "$1" = "git" ] && shift
        git "[email protected]"
    }
    

    Я заметил, что включение этого в ваш .rc замедлит git. Если вы хотите этого избежать, вы должны распаковать функцию и сохранить ее как сценарий оболочки в $PATH

    Источник (Я немного изменил его. Оригинал спрашивает каждый раз о ключевом пути.)

  • Подсветка синтаксиса в cat

    cat() {
        local out colored
        out=$(/bin/cat [email protected])
        colored=$(echo $out | pygmentize -f console -g 2>/dev/null)
        [[ -n $colored ]] && echo "$colored" || echo "$out"
    }
    

    Это может быть довольно медленным, так как перед его печатью необходимо проанализировать весь файл. Никогда не используйте это в двоичном файле!

    pip install Pygments для установки пигментов.

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
21

Inconsolata-dz (бесплатно )

Это небольшая модификация оригинального Inconsolata . Это фантастический моноширинный шрифт для использования с Terminal.app, TextMate, MacVim и в любом другом месте. Обязательно для любого кодера. введите описание изображения здесь>> </p></body></html>

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
19

TotalTerminal (бесплатно)

Вкладки, козырек, горячие клавиши, очень простые и надежные. Хорошо поддерживается с частыми обновлениями.

TotalTerminal

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
16

MTR (бесплатно) от BitWizard - сочетает ping и traceroute

Установка: brew install mtr --no-gtk

                                            Packets               Pings
 Host                                     Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. 217.70.191.253                         0.0%    32    0.5   1.7   0.3  17.6   3.8
 2. p252-core4-d.paris.gandi.net           0.0%    32    0.5   1.1   0.3  17.8   3.1
 3. xe2-1-24-vcore1-dc1.balt.gandi.net     0.0%    32   97.4 105.7  96.9 187.7  22.0
 4. eqixva-google-gige.google.com         80.0%    31  100.8 100.2  99.6 100.8   0.4
 5. 209.85.252.80                          0.0%    31  100.3 108.0 100.0 210.4  24.3
 6. 209.85.243.114                         0.0%    31  111.9 112.6 111.7 118.6   1.2
 7. 64.233.174.87                          0.0%    31  119.8 112.7 111.6 119.8   1.9
    64.233.174.117
 8. 209.85.242.181                        16.1%    31  112.0 117.0 111.8 125.2   5.1
    209.85.253.185
    209.85.242.177
    209.85.253.181
 9. vx-in-f105.1e100.net                   0.0%    31  112.0 112.3 111.6 116.4   0.8

whatmask (бесплатно) от Laffey Computer Imaging - калькулятор подсети IPv4

Загрузить OS X двоичный а>. Также онлайн .

$ whatmask 192.168.5.6/22

------------------------------------------------
           TCP/IP NETWORK INFORMATION
------------------------------------------------
IP Entered = ..................: 192.168.5.6
CIDR = ........................: /22
Netmask = .....................: 255.255.252.0
Netmask (hex) = ...............: 0xfffffc00
Wildcard Bits = ...............: 0.0.3.255
------------------------------------------------
Network Address = .............: 192.168.4.0
Broadcast Address = ...........: 192.168.7.255
Usable IP Addresses = .........: 1,022
First Usable IP Address = .....: 192.168.4.1
Last Usable IP Address = ......: 192.168.7.254
ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
16

Autojump (бесплатно)

Большая утилита командной строки, которая хранит команды cd и автоматически создает ярлык автозаполнения для наиболее доступных каталогов.

Еще лучше, если несколько каталогов имеют одинаковое имя (начиная с одних и тех же символов), Autojump просто выберет тот, к которому вы чаще всего идете. Вам не нужно набирать все имя.

Пример:

cd project1

j p теперь перенесет вас прямо в полный путь project1 .

Теперь, если вы создаете подобную папку с именем project2 , к которой вы также часто обращаетесь (но менее project1 ), Autojump присваивает меньший вес project2 и прямо на project1 .

Если вы нажмете TAB, например, введите "pro", ваша оболочка отобразит проект project__, намекая на то, что есть больше чем один соответствующий каталог. Еще один TAB hit отобразит список соответствующих каталогов и позволит вам выбрать тот, который вы имеете в виду.

Примечание. Недавно я установил ZSH и заметил некоторые помехи из-за функций автозаполнения. Autojump отлично работает на ванильном терминале.

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
15

Solarized (бесплатно)

Цветовая схема для терминала.

Lion поддерживает цвета ANSI, поэтому больше не нужны такие вещи, как SIMBL.

Для Snow Leopard и ранее вам понадобится SIMBL , чтобы максимально использовать его с поддержка цвета в Terminal.app ограничена.

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
14

MacPorts

  

Проект MacPorts - это инициатива сообщества с открытым исходным кодом для создания простой в использовании системы для компиляции, установки и обновления программного обеспечения с открытым исходным кодом на основе командной строки X11 или Aqua в операционной системе Mac OS X.

Многие люди скажут, что вы не используете macport, вместо этого используйте homebrew. Это в основном верно, homebrew легче и проще в использовании . Но macports предлагает намного больше пакетов, и некоторые из них никогда не придут к homebrew, из-за их различной философии. (Я использую оба варианта для разных нужд)

Например, я рекомендую GTK в своем варианте кварца (родной OSX):

sudo port install gtk2 +no_x11+quartz

Затем, когда вы устанавливаете пакет, который может извлечь выгоду из него, например wirehark ... Вы получите собственный OSX UI, быстрее и выглядящий намного лучше, чем X11 ...

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
13

DTerm (бесплатно) от Decimus Software

Подобно Visor, но с некоторыми дополнительными дружественными функциями (также, похоже, находится в активной разработке)

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
12

Серебряный искатель (бесплатно)

Инструмент поиска кода, похожий на ack, но быстрее.

Установите его с помощью brew

brew install the_silver_searcher
ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
8

Lunchy (бесплатно)

  

Дружественная оболочка для launchctl. Начните своих агентов и отправляйтесь на обед!

Удобный инструмент для управления (запуск /останов /перезапуск) служб /демонов OSX ...

Это рубиновая жемчужина: gem install lunchy

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
8

Bropages :

Страницы

bro - это хорошо читаемое дополнение к страницам man. На страницах Bro представлены краткие примеры для команд Unix.

Пример:

$ bro find
14 entries for find -- submit your own example with "bro add find"

# Executes a command on the files and folders matching a given pattern, in this case, output the last lines of each .foo file in the current folder and subfolders.
find . -name "*.foo" -exec tail {} \;

        bro thanks      to upvote (24)
        bro ...no       to downvote (0)

.......................................................................................................................................

# Outputs all the file names/paths that start with the name "Casey".  Searches recursively starting from my current directory (.)
# Throws out any error output by sending it to /dev/null
find . -name "Casey*" 2>/dev/null

        bro thanks 2    to upvote (16)
        bro ...no 2     to downvote (0)

.......................................................................................................................................

# Finds all files in and under the current directory that contain 'foo' in their name
find . -iname '*foo*'

        bro thanks 3    to upvote (13)
        bro ...no 3     to downvote (1)
ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
7

Янус + macvim

  

Janus - это основное распространение плагинов vim и инструментов, предназначенных для запуска поверх последнего моментального снимка MacVIM

установить macvim с homebrew brew install macvim и следуйте инструкциям janus (легким), и вы настроены с помощью мощного текстового редактора, который был предварительно настроен для вас умами бриллиантов. Кривая обучения vim страшно с первого взгляда, но как только вы с ней справитесь, вы никогда не вернетесь (или, может быть, к emacs ...) (fyi, TextMate был оставлен в пользу многих кодеров)

Это может показаться странным, но я предпочитаю использовать vim в iTerm2, чем macvim ... (vim поставляется в macvim, просто используйте brew install macvim --override-system-vim)

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
5

ProfontX (бесплатно)

Мое любимое программирование и шрифт терминала на MacOS. (ProfontX является скорректированной версией Profont , которая имела проблемы с некоторыми символами)

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
4

Boxen - автоматическая настройка и сборка Mac OS, установка /обновление программного обеспечения. Это помогает экономить много времени, когда вы хотите точно такую ​​же настройку (программное обеспечение, версию) в команде разработчиков, а также позволить каждому человеку устанавливать другие инструменты для повышения производительности.

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
3

Visor

- интересная утилита. Он описывает себя как:

  

общесистемный терминал на горячей клавише

Довольно круто. Он сбрасывает терминал при нажатии комбинации клавиш.

ИЗМЕНИТЬ :

  

Visor был переименован в TotalTerminal ... (см. другой ответ, это может /должно быть удалено)

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
3

bash-it (бесплатно)

Альтернатива oh-my-zsh (см. выше). Действительно полезная коллекция скриптов, псевдонимов и функций для bash. Также предоставляет приятную систему плагинов для добавления ваших собственных дополнений.

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
3

Go2Shell (бесплатно)

Не терминальная утилита, а утилита для использования терминала. Он помещает кнопку на панель инструментов Finder, и при нажатии она создает новое окно терминала cd'ed в этот каталог.

изменить Разработчики говорят, что версия приложения, доступная прямо из них, имеет больше возможностей, чем версия в App Store. Я обновил ссылку, чтобы перейти на их страницу, но версия App Store по-прежнему доступна .

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
2

Bwana (бесплатно)

Не технически команда терминала, но очень удобная для быстрого поиска в manpage, разрешая URL-адрес: «man: ls» для отображения html-страницы man-страницы в вашем браузере.

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
1
ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12
0

Мне нравится Цвет Maven

alias maven="command mvn"
color_maven() {
  maven $* | sed -e "s/\(\[INFO\]\ \-.*\)/[36;01m\1[m/g" \
               -e "s/\(\[INFO\]\ >>> .*\)/[32;01m\1[m/g" \
               -e "s/\(\[INFO\]\ <<< .*\)/[32;01m\1[m/g" \
               -e "s/\(\[INFO\]\ Building .*\)/[36;01m\1[m/g" \
               -e "s/\(\[INFO\]\ \[.*\)/01m\1[m/g" \
               -e "s/\(\[INFO\]\ BUILD SUCCESS\)/[01;32m\1[m/g" \
               -e "s/\(\[INFO\]\ BUILD FAILURE\)/[01;31m\1[m/g" \
               -e "s/\(\[WARNING\].*\)/[01;33m\1[m/g" \
               -e "s/\(WARN.*\)/[01;33m\1[m/g" \
               -e "s/\(DEBUG.*\)/[01;33m\1[m/g" \
               -e "s/\(\[ERROR\].*\)/[01;31m\1[m/g" \
               -e "s/Tests run: \([^,]*\), Failures: \([^,]*\), Errors: \([^,]*\), Skipped: \([^,]*\)/[32mTests run: \1[m, Failures: [01;31m\2[m, Errors: [01;31m\3[m, Skipped: [01;33m\4[m/g"
}
alias mvn=color_maven

Цвет LS

alias ls='ls -FG'
export LSCOLORS=gxBxhxDxfxhxhxhxhxcxcx
-or-
echo export CLICOLOR >> ~/.bashrc
echo export CLICOLOR >> ~/.bash_profile
ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132