美文网首页
macOS + iTerm + oh-my-zsh 常用命令

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

作者: april_mu | 来源:发表于2017-11-19 22:15 被阅读0次

    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

    相关文章

      网友评论

          本文标题:macOS + iTerm + oh-my-zsh 常用命令

          本文链接:https://www.haomeiwen.com/subject/opaxlxtx.html