使用zsh+oh-my-zsh+autojump

《MacTalk·人生元编程》介绍说zsh是终极Shell。反正Mac自带,不妨chsh -s zsh切换来看看。

  • alias -s c=vim,关联.c文件到vim,在terminal直接输入test.c,相当于vim test.c. 节省了一个“vim”。
  • d,显示曾经访问的目录。3直接切换到3对应的目录。
  • 配合autojump($ brew install autojump),使路径跳转异常方便。

看起来确实不错。

image

zsh是Mac自带的shell之一,执行$ cat /etc/shells, 输出:

/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

Mac默认使用bash,通过命令 $ chsh -s /bin/zsh 可以切换到zsh.

zsh的配置(包含插件、主题等)可以使用oh-my-zsh

image

oh-my-zsh安装和卸载

都非常简单,一行命令搞定

install

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

uninstalluninstall_oh_my_zsh

配置文件在: ~/.zshrc

主题可自由更换,都在~/.oh-my-zsh/themes. 看着默认的主题也还可以,就不折腾了。ZSH_THEME="robbyrussell"

概念

参数(变量)

普通参数

foo='This is a parameter'

  • 注意
    • ”=前后没有空格
    • ’ ‘内的所有字符都在foo变量内,包括换行符
  • 单引号:
    • print $foo
      • This is a parameter
    • print '$foo'
      • $foo
    • print ''$foo''
      • This is a parameter
  • 双引号:
    • print "$foo"
      • This is a parameter
    • print ""$foo""
      • This is a parameter

Array

foo=(This is a parameter)

  • print -- ${foo[4]}
    • parameter
  • 取变量时,可以加上{}使条理清晰。

表达式

if… else…

  • -o: test an option
    • -o interactive
    • -o login
if [[ -o login ]]; then
        print yes
else
        print no
fi

函数

fn() {
    print Hello world!
}

使用:fn

如果函数定义在.sh文件中,可以用source file.sh使其生效。

命令

  • shell会将所有命令缓存在hash table中,这样每次取命令就非常快。
  • 如果新加一个path到PATH, zsh会自动执行rehash
  • 查看历史命令.zsh_history
commandmeaning
env环境变量
type查看是否为shell内建命令
alias ls=’ls -G’别名
d [number]显示(跳转到)历史目录(默认10个)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值