macOS + iTerm + oh-my-zsh 常用命令

macOS 下的 Shell

工具推荐:iTerm2,因为比原生的终端好用1w倍,可以支持各种自定义主题,墙裂推荐~ iTerm官网
工具推荐:oh-my-zsh,zsh 解释器的配置管理工具,在 zsh 提供的强大的补全,良好的交互前提下,还提供了主题,插件等等管理功能。 oh-my-zsh命令列表
macOS 的内核衍生自 FreeBSD,shell 命令也继承了 FreeBSD 的配置。相比之下 Linux Shell 更加灵活,为了用的更爽,我们可以安装 coreutils 来使用 Linux 风格的 Shell,参见博客:macOS 下使用 Linux Shell

常用命令

1.帮助

可以用 man 查看一个命令的文档,甚至可以用 man 查看 man 命令。还可以用 man 查看 zsh,csh 等等。

    $ man man
    a : find all matching entries
    c : do not use cat file
    d : print gobs of debugging information
    D : as for -d, but also display the pages
    f : same as whatis(1)
    h : print this help message
    k : same as apropos(1)
    K : search for a string in all pages
    t : use troff to format pages for printing
    w : print location of man page(s) that would be displayed
        (if no name given: print directories that would be searched)
    W : as for -w, but display filenames only
    
    $ man zsh

man 命令可以有很多参数功能很强大,甚至可以修改命令的配置,但是我们用的最多的就是查看命令的文档了。

还可以用 where 命令查看一个命令的文件路径和alias。
可以通过 where 看到 take 是一个函数,cd 是一个 build-in 命令。还可以 where where。

    $ where ls
    ls: aliased to ls --color=tty
    /usr/local/opt/coreutils/libexec/gnubin/ls
    /bin/ls
    
    $ where take
    take () {
       mkdir -p $1
       cd $1
    }
    
    $ where cd
    cd: shell built-in command
    /usr/bin/cd

当用 man 查看 where 时,会出现 build-in 的 command 列表,还有 alias,break 等等命令。

2.目录操作

  • 查看目录 $ ls
    oh-my-zsh 提供的快捷命令 $ l 用 where 可以看到它是 $ ls -lah 的别名。

  • 查看当前路径 $ pwd

  • 进入父级文件夹 $ cd ..
    快捷命令 $ ..
    祖父级文件夹 $ ...
    甚至可以 $......,最多6个~

  • 进入用户目录 $ cd ~
    快捷命令 $ ~

  • 进入根目录 $ cd /
    快捷命令 $ /

  • 返回刚才的文件夹 $ cd -
    快捷命令 $ -

  • 新建文件夹 $ mkdir
    创建多级文件夹,如果中间路径的文件不存在会报错,可以加上 $ -p 选项,会自动创建不存在的文件夹。

$ mkdir test/test
mkdir: cannot create directory ‘test/test’: No such file or directory
$ mkdir test/test -p

快捷命令:$ take ,相当于 mkdir -p + cd,创建文件夹及其路径,并进入文件夹

  • 删除文件夹:$ rm -rf test,强制递归删除文件夹及其内容。

3.文件操作

  • 新建文件 $ touch test.txt
  • 查看文件内容 $ cat test.txt,还可以接 grep 进行筛选。
  • 重定向
    $ ls > test.txt 重定向标准输出到文件,并覆盖原来的内容。
    $ ls 2> test.txt 重定向标准错误到文件,并覆盖原来的内容,2代表标准错误。
    $ ls >> test.txt 重定向标准输出到文件,并追加到原来的内容后。
    $ ls 2>> test.txt 重定向标准错误到文件,并追加到原来的内容后。
    $ ls < test.txt 重定向标准输入到文件,并覆盖原来的内容。
  • 文件统计
    wc 命令,返回文件的行数,词数,字符数。-l 选项,只返回行数。
    还可以用 sort 排序内容,uniq 去重。
    $wc test.txt
     7  7 59 test.txt
    $wc -l test.txt
     7 test.txt
    $cat text.txt | sort | uniq | wc -l
     7 test.txt
    
  • 文件查找 $ find directory -name filename,查找 directory 目录下名为 filename 的文件。
    可以用正则表达式匹配文件名 $find . -name 'test*'。
    设定搜索深度 $find . -name test -maxdepth 1

4.git 命令

oh-my-zsh 提供了很多 git 命令的别名,让经常使用 git 命令提升了很多效率。
如下一些常用 git 操作,缩写后可以接一些选项,例如 $ gc -m'sth'

git 的 alias 有很多,一时间不能全都记下来,可以用 alias 查看,grep 过滤。

$ alias | grep "git stash"
gsta='git stash save'
gstaa='git stash apply'
gstc='git stash clear'
gstd='git stash drop'
gstl='git stash list'
gstp='git stash pop'
gsts='git stash show --text'

4.快捷键

macOS 下的 iTerm2 基本快捷键与其他应用一致,以下是一些特殊快捷键。
command + R/K,清空屏幕
command + enter,进入/退出全屏
command + D,垂直分屏
command + shift + D,水平分屏
command + U,变换透明度
command + ; ,命令历史
control + A,移动光标到行尾
control + E,移动光标到行尾
control + W,删除光标前的内容
command + K,删除光标后的内容
control + U,删除整行
control + D,删除光标后的字符

5.其他

  • 管道,提供命令的链接使用,前一个命令的输出是后一个命令的输入。用 | 表示。
    查找ga命令的使用次数:$history | grep 'ga' | wc

  • $zsh_stats 查看命令的使用统计。

$history | grep 'git add'
 3671  git add test
 4112  git add .
  • $ps -A 查看所有进程,因为进程较多,一般与grep 连用。

6.参考文档:

什么是 shell
iTerm官网
oh-my-zsh
命令列表
macOS 下使用 Linux Shell

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,427评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,551评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,747评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,939评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,955评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,737评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,448评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,352评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,834评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,992评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,133评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,815评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,477评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,022评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,147评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,398评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,077评论 2 355

推荐阅读更多精彩内容

  • 首先,我们在使用前先看看HDFS是什麽?这将有助于我们是以后的运维使用和故障排除思路的获得。 HDFS采用mast...
    W_Bousquet阅读 4,196评论 0 2
  • (一)基本命令 命令格式: 命令 参数 1.ls 显示文件名,等同于dos下dir命令 命令格式:ls [opti...
    飞羽孟德阅读 1,889评论 0 3
  • 为何叫做 shell ? shell prompt(PS1) 与 Carriage Return(CR) 的关系?...
    Zero___阅读 3,153评论 3 49
  • 本文笔记源自这里——[实验楼]欢迎大家在下面交流其中有问题的地方喜欢请点收藏,每日更新(全部已亲自实践). 一. ...
    东皇Amrzs阅读 3,993评论 7 54
  • (一) 枯黄的树叶落地 是对结束的生命的太息 抬头仰望树上的绿叶随风舞起 它释然的叹了气 (二) 帘上的和天上的星...
    彼岸月見阅读 178评论 0 3