Якщо ви робили нову чи чисту інсталяцію OS X версії 10.3 або новішої, оболонка терміналу користувача за замовчуванням - bash.
Bash - це, по суті, вдосконалена та безкоштовна версія GNU оригінальної оболонки Bourne, sh. Якщо у вас є попередній досвід роботи з bash (часто за замовчуванням для інсталяцій GNU / Linux), це робить досвід роботи з командним рядком OS X знайомим, інакше розгляньте можливість переключення вашої оболонки або на tcsh, або на zsh, оскільки деякі вважають це більш зручним для користувача.
Якщо ви оновили OS X версії 10.2.x, 10.1.x або 10.0.x або використовуєте її, оболонка користувача за замовчуванням - tcsh, розширена версія csh ('c-shell'). Ранні впровадження були трохи глючними, а синтаксис програмування трохи дивним, тому це створило поганий реп.
Все ще існують деякі принципові відмінності між mac та linux, як Гордон Девіссон так влучно перелічує, наприклад, немає useradd
на Mac і ifconfig
працює по-іншому.
Наступна таблиця корисна для знання різних оболонок unix.
sh The original Bourne shell Present on every unix system
ksh Original Korn shell Richer shell programming environment than sh
csh Original C-shell C-like syntax; early versions buggy
tcsh Enhanced C-shell User-friendly and less buggy csh implementation
bash GNU Bourne-again shell Enhanced and free sh implementation
zsh Z shell Enhanced, user-friendly ksh-like shell
Вам також можуть стати в нагоді ці посібники:
http://homepage.mac.com/rgriff/files/TerminalBasics.pdf
http://guides.macrumors.com/Terminal
http://www.ofb.biz/safari/article/476.html
Нарешті, я працюю на Linux (Ubuntu 11) та Mac osX, тому я використовую bash, і мені найбільше подобається налаштування .bashrc (джерело від .bash_profile
файлу OSX) з псевдонімами, деякі приклади нижче. Тепер я розмістив усі свої псевдоніми в окремому файлі .bash_aliases і включив його до:
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
у файлі .bashrc або .bash_profile.
Зверніть увагу, що це приклад різниці у mac-linux, оскільки на Mac ви не можете мати--color=auto
. Перший раз, коли я зробив це (не знаючи), я перевизначивls
недійсність, що було трохи тривожно, доки я не видалив --auto-color
!
Вам також може стати в нагоді https://unix.stackexchange.com/q/127799/10043
alias la='ls -A'
alias l='ls -alFtr'
alias lsd='ls -d .*'
alias h='history | tail'
alias hg='history | grep'
alias mv='mv -i'
alias zap='rm -i'
alias p='pwd'
alias x='exit'
alias {ack,ak}='ack-grep'
alias s='cd ..'
alias play='cd ~/play/'
alias src='script/rails console'
alias srs='script/rails server'
alias raked='rake db:drop db:create db:migrate db:seed'
alias rvm-restart='source '\''/home/durrantm/.rvm/scripts/rvm'\'''
alias rrg='rake routes | grep '
alias rspecd='rspec --drb '
WORKBASE="~/Dropbox/97_2012/work"
alias work="cd $WORKBASE"
alias code="cd $WORKBASE/ror/code"
WORKBASE_GIT="~/Dropnot"
alias {dropnot,not}="cd $WORKBASE_GIT"
alias {webs,ww}="cd $WORKBASE_GIT/webs"
alias {setups,docs}="cd $WORKBASE_GIT/setups_and_docs"
alias {linker,lnk}="cd $WORKBASE_GIT/webs/rails_v3/linker"
alias {gsta,gst}='git status'
alias {gbra,gb}='git branch'
alias {gco,go}='git checkout'
alias {gcob,gob}='git checkout -b '
alias {gadd,ga}='git add '
alias {gcom,gc}='git commit'
alias {gpul,gl}='git pull '
alias {gpus,gh}='git push '
alias glom='git pull origin master'
alias ghom='git push origin master'
alias gg='git grep '
alias v='vim'
alias {ton,tn}='tmux set -g mode-mouse on'
alias {tof,tf}='tmux set -g mode-mouse off'
alias {dmc,dm}='cd ~/Dropnot/webs/rails_v3/dmc/'
alias wf='cd ~/Dropnot/webs/rails_v3/dmc/dmWorkflow'
alias ws='cd ~/Dropnot/webs/rails_v3/dmc/dmStaffing'