Hai qualche consiglio o suggerimento per il terminale in Mac OS X?

Un consiglio o trucco per risposta.

Il mio preferito è

open .

Apre la cartella che stai attualmente navigando nel Finder. Puoi anche passare URL, immagini, documenti o altro a open .

Se si specifica il nome di un programma con -a è possibile passare invece l'URL, l'immagine, il documento o la cartella a quel programma, ad es. open -a Preview image.png , sovrascrivendo il programma predefinito impostato per il tipo di file.

Si prega di non pubblicare duplicati. Cerca nella domanda in questo modo: inquestion:this ls -l

Solo risposte specifiche per Mac OS X.

    
posta Josh K 27.08.2013 - 12:58
fonte

133 risposte

Trascina l'icona del proxy di una finestra del Finder per ottenere un percorso di escape; particolarmente utile dopo aver digitato cd

    
risposta data 11.01.2012 - 11:56
fonte

Ho creato un alias chiamato dirstat, chiamato per un'utilità simile. Aiuta a determinare dove viene utilizzato tutto lo spazio del disco rigido. Aggiungilo al tuo /etc/bashrc o come uno script di bash.

du -s ./* | sort -n| cut -f 2-|xargs -i du -sh {}
    
risposta data 11.01.2012 - 11:56
fonte

Ho aggiunto le righe qui sotto al mio file ~/.bash_profile .

Con vedrai l'effetto avviando un comando / percorso e premendo alcune volte.

Cambia la funzione di per scorrere le opzioni di completamento automatico:

bind '"\t":menu-complete'

SSH come root per ...:

alias shroot="ssh -l root"

Forza volumi di espulsione:

alias forceeject="hdiutil detach -force"

Forza la chiusura di un'applicazione:

alias forcequit="killall -HUP"

Apri pagine man come PDF:

pdfman() { man $1 -t | open -f -a Preview; };

Alias pingburst:

alias ping2="ping -c2"
    
risposta data 22.01.2012 - 10:41
fonte

Puoi usare il tasto esc come sostituto di alt. devi prima toccarlo e poi inserire l'altro invece di tenerlo premuto. È una funzionalità standard, ma più importante in quanto il tasto su macs funziona in modo diverso come sulle tastiere "windows / Linux".

È possibile impostare il comportamento del tasto alt nelle preferenze per comportarsi come sulle tastiere "Windows". Anche se non sarai in grado di digitare caratteri importanti come @, \, {, ...

Molto importante se usi emacs nel terminale. Ma supponiamo che ci siano molti comandi che lo richiedono - ad esempio puoi anche copiare e incollare in bash con i collegamenti emacs.

    
risposta data 22.01.2012 - 10:42
fonte

Trovo utile copiare il testo negli appunti da Terminal.app senza usare il mouse per effettuare una selezione.

Questo sembra funzionare solo con il vecchio Terminal.app di Tiger. L'ho appena rinominato in Tiger Terminal.app e su Leopard funziona ancora bene. Non l'ho provato su Snow Leopard.

Quindi, con Tiger Terminal, puoi fare una copia del mouse digitando + + , quindi usando i tasti freccia per spostarsi all'inizio dell'area che si desidera copiare. Quindi, digita + + di nuovo per ancorare il punto di selezione. Usa i tasti freccia (alcuni comandi simili a emacs funzionano anche per la navigazione come ctrl + E ) per spostarti alla fine della regione che vuoi copiare. Infine, digita nuovamente + + per copiare la selezione negli appunti.

    
risposta data 22.01.2012 - 10:52
fonte

Uno che effettivamente utilizzo parecchio è uptime . Semplice ma carino :) Attualmente la mia restituisce up 32 days, 14:30 .

    
risposta data 13.06.2012 - 02:02
fonte
drutil eject
drutil tray eject # analagous to above

Apre il vassoio del CD o espelle un CD (per un laptop)

drutil tray close

Chiude il vassoio del CD

Sono molto utili quando si usa SSH in un altro computer.

    
risposta data 16.06.2013 - 01:05
fonte

Strettamente da una finestra di Terminale a se stessa o un'altra finestra di Terminale:

Seleziona il testo nel modo normale, quindi incollalo spostando il mouse sulla finestra in cui vuoi incollarlo e facendo clic sul pulsante del pulsante centrale .

Nota che se hai fatto più selezioni con l'opzione Comando trascina, incollare si incollerà in una nuova riga, che invocherà la linea corrente. Questo è probabilmente non qualcosa che desideri .

    
risposta data 25.06.2013 - 02:34
fonte

Server Web locale con Ruby

Ecco l'alternativa di Ruby al one-liner Python per un server HTTP locale (anch'esso pubblicato in questa discussione):

ruby -run -e httpd . -p 8000

Questo aprirà un server nella directory di lavoro con un numero di porta di 8000 in modo che sia possibile accedervi nel browser in http://localhost:8000 .

Cambia l'8000 in qualsiasi numero di porta che vorresti usare.

    
risposta data 21.11.2013 - 02:15
fonte

Sono state fornite molte risposte su come trascinare file e cartelle nella finestra del terminale, ma Ciarán Walsh ha creato un'utilità chiamata trascina che ti permette di trascinare i file fuori dalla finestra del terminale. È ancora meglio con la mia patch che consente più file per operazione di trascinamento.

    
risposta data 17.12.2013 - 13:19
fonte

Non potevo credere che qui manchi quanto segue. Il miglior miglioramento di un terminale OS X è quello di far sentire UNIX / Linux simile. La mia prima intenzione era mostrarti un bash-completion corretto che completa diverse cose come ssh o git correttamente. Sto parlando del comportamento standard a cui ero abituato da Linux.

Ma molto più importante è il manger package mancante homebrew . Con questo avrai un sacco di comandi / app / librerie standard Unix.

Prima installazione homebrew tramite

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

e ottieni il sofisticato completamento bash tramite

brew install bash-completion

Non ignorare il messaggio. Dovrai modificare .bash_profile . Ma ne vale la pena. bash-completion completa anche brew .

    
risposta data 10.01.2014 - 13:56
fonte

Ctrl + D è una scorciatoia per l'uscita. Utile se lavori spesso in sessioni nidificate ssh .

    
risposta data 10.01.2014 - 14:00
fonte

È già stato detto che il trascinamento di una cartella in un'app terminale avrà il percorso digitato direttamente in essa. Puoi inoltre trascinare una cartella sull'icona del terminale e un nuovo terminale verrà aperto direttamente in quel percorso

    
risposta data 13.01.2014 - 17:22
fonte

Mentre un'opzione di cui sopra cita (alt) -click per spostarsi in una posizione nella linea, in realtà questo funziona ovunque nel terminale. Lo uso in modo predominante negli editor di testo.

Ovunque puoi ottenere facendo clic con il tasto sinistro del mouse, anche qui si ottiene il cursore.

Questa è la ragione principale per cui ho smesso di usare le schede nel codice nei primi anni '90, NCSA Telnet includeva questa funzionalità per Mac's System 7 e se cercava di attraversare le schede, quindi ha finito per andare ovunque e beeping come un matto.

    
risposta data 13.01.2014 - 17:32
fonte

Uso molto questo comando

echo | pwd | pbcopy

Semplicemente copia il percorso corrente negli appunti. L'ho anche associato con path alias

alias path='echo | pwd | pbcopy'
    
risposta data 26.01.2014 - 12:48
fonte

Aggiungi alias per le frasi comunemente errate

alias sdou='sudo'
alias suod='sudo'
alias sodu='sudo'
alias gerp='grep' 
    
risposta data 19.03.2014 - 21:38
fonte

Inutile, ma divertente. Vai e scarica giocatori ASCII da Google Documenti. Installali in /usr/bin . Ora puoi avere un riproduttore di film in Terminale. C'è ASCIIbw e ASCIIcolor . Non penso di dover spiegare che uno è il colore e uno è in bianco e nero. Per aprire un tipo di file film: ASCIIbw ~/Desktop/Test.mov

    
risposta data 23.09.2011 - 18:54
fonte

Quando sono in terminal mi aspetto che ogni azione venga data in forma scritta, perché non esiste una GUI.

Molte delle app basate sul terminale hanno un qualche tipo di comando di uscita per riportarti alla shell. Questo è quello a cui sono abituato quando sono in terminal.

Per lasciare una finestra di terminale o una scheda ho eseguito un alias del seguente comando:

alias q="osascript -e 'tell application \"System Events\" to tell process \"Terminal\" to keystroke \"w\" using command down'"

EDIT:

è meglio fare come Jason ha commentato:

configura Terminal.app per chiudere la finestra se la shell è stata chiusa in modo corretto

alias q="logout"
    
risposta data 03.11.2011 - 10:39
fonte
alias ka="killall"

Probabilmente uno dei miei comandi più usati. Ho inserito questo nella mia .bash_profile per un facile accesso.

    
risposta data 22.01.2012 - 10:40
fonte

Se hai installato XCode, è molto utile eseguire il comando purge sul terminale. Libera tutta la tua RAM attiva e inattiva. È utile per le persone come me che fanno un sacco di produzione audio (o qualsiasi tipo di modifica del supporto per quella materia) quando hai solo 4 GB di RAM. Saresti sorpreso di quanto velocemente 4 GB si esauriscano.

    
risposta data 05.08.2012 - 03:34
fonte
alias alias_open="mate ~/.oh-my-zsh/lib/aliases.zsh"
alias alias_reload="source ~/.oh-my-zsh/lib/aliases.zsh"
alias lsa='ls -lahG'
alias l='ls -la'
alias ll='ls -l'
alias sl=ls # often screw this up
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
alias ......='cd ../../../../..'

#######
# GIT #
#######
alias gd="git diff"
alias gl="git log"
alias gu="git up"
alias gs="git status"
alias gf="git fetch"
alias gr="git remote -v"
alias gp="git push"
alias gph="git push heroku master"
alias gps="git push staging staging:master"
alias gpg="git push github master"
alias gpo="git push origin master"
alias gplh="git pull heroku master"
alias gpls="git pull staging staging:master"
alias gplg="git pull github master"
alias gplo="git pull origin master"
alias gpl="git pull"
alias gc="git commit -am"
alias gco="git checkout"
alias ga="git add ."

##########
# SYSTEM #
##########
alias cwd='pwd | pbcopy' #copy the working directory into the clipboard
alias grep="grep --color=auto"

####################################################
# Create box of '#' characters around given string #
####################################################

function box() { t="$1xxxx";c=${2:-#}; echo ${t//?/$c}; echo "$c $1 $c";echo ${t//?/$c}; }

########################
# Rip audio from video #
########################

# ("$1" for output file & "$2" for input file)
function audioextract()
{
mplayer -ao pcm -vo null -vc dummy -dumpaudio -dumpfile "$1" "$2"
}
# extract audio from DVD VOB files
# USAGE:  audioextractdvd input_file.vob output_file.ac3
function audioextract_dvd()
{
mplayer "$1" -aid 128 -dumpaudio -dumpfile "$2"
}

#######################
# Backup .bash* files #
#######################

function backup_bashfiles()
{
  ARCHIVE="$HOME/bash_dotfiles_$(date +%Y%m%d_%H%M%S).tar.gz";
  cd ~
  tar -czvf $ARCHIVE .bash_profile .bashrc .bash_functions .bash_aliases .bash_prompt
  echo "All backed up in $ARCHIVE";
}
    
risposta data 17.04.2011 - 17:05
fonte

Puoi tenere premuto l'opzione e fare clic su una posizione nella riga corrente per spostare il cursore su quella posizione.

    
risposta data 26.07.2010 - 02:02
fonte

pbcopy e pbpaste :

# Copy output of command to clipboard
grep 'search term' largeFile.txt | pbcopy

# Abuse clipboard contents
pbpaste | sed 's/ /%20/g'

#  get rid of the text attributes when you copy formatted text
pbpaste|pbcopy
    
risposta data 14.01.2014 - 17:52
fonte

opensnoop è la mia nuova utility preferita. Utilizza DTrace per mostrare tutti i file a cui si accede sul sistema, è necessario eseguirlo con i privilegi di superutente

sudo opensnoop

Puoi anche guardare ciò che un particolare processo si apre trasmettendo il PID:

sudo opensnoop -p PID 

Oppure guarda un determinato file per vedere chi lo sta aprendo:

sudo opensnoop -f /etc/passwd
    
risposta data 27.12.2013 - 14:05
fonte

Non è integrato ma questo è il modo più efficace per convincere mia moglie a smettere di usare il mio portatile per leggere le notizie sulle celebrità per ore dopo le 4-5 richieste di riavere il mio Macbook:

echo 'The system is overheating and needs to go to sleep now.' | \
growlnotify -a 'Activity Monitor' 'OVERHEATED'; \
sleep 1; \
say 'Overheated system.'

Poiché è quasi sempre attorno al 70c è credibile.

    
risposta data 27.12.2013 - 14:05
fonte

Avvia un server web veloce da qualsiasi directory:

python -m SimpleHTTPServer 8000
    
risposta data 15.07.2010 - 15:23
fonte

Quando stai modificando una riga di comando particolarmente lunga e nodosa:
ctrl + X , ctrl + E ti farà accedere al tuo editor e ti consentirà di lavorarci lì.

    
risposta data 22.01.2012 - 10:21
fonte

Il comando say richiama le funzionalità di sintesi vocale del sistema.

say "Hello there."
    
risposta data 08.10.2009 - 01:51
fonte
!!

Esegue nuovamente l'ultimo comando. Ottimo per tenere traccia delle modifiche.

    
risposta data 25.10.2009 - 18:01
fonte

Smetti di usare i tasti freccia e naviga la riga di comando più rapidamente con

ctrl + A : sposta all'inizio della riga

ctrl + E : sposta alla fine della riga

ctrl + B : torna indietro di un carattere

ctrl + F : sposta in avanti un carattere

esc + B : torna indietro di una parola

esc + F : sposta in avanti una parola

ctrl + U : cancella dal cursore all'inizio della riga

ctrl + K : cancella dal cursore alla fine della riga

ctrl + W : cancella dal cursore all'inizio della parola corrente

    
risposta data 18.01.2014 - 16:14
fonte

Leggi altre domande sui tag