• zsh使用技巧(WIP)


    看了这个问题也关注这个问题很久了,很多人介绍的都是oh-my-zsh(一下简称omz)的一些特征。不可否认这是一个很优秀的框架,但zsh的世界不应该全是omz。这个回答,我想介绍一下zsh原生自带的一些功能,技巧。以及除了omz以外,有哪些优秀的插件框架。

    关于叹号的用法

    先说个很基本的用法,Shell都支持!!,!^,!$,!*。这四种用法分别指代上一条命令、上一条命令的第一个参数、上一条命令的最后一个参数、上一个命令的全部参数。可以按补全,也可直接执行,zsh会自动补全,再去执行。bash的话,按不会帮你补全。

    zsh% echo 1 2 3 4
    1 2 3 4
    
    "!!"  # echo 1 2 3 4
    "!^"  # 1
    "!$"  # 4
    "!*"  # 1 2 3 4
    

    非首位参数可以用!:指定

    zsh% echo 1 2 3 4
    1 2 3 4
    
    "!:1"    # 1
    "!:-3"   # echo 1 2 3
    "!:1-1"  # 1
    "!:3-4"  # 3 4
    

    zsh还支持!?这种用法,上面的基本叹号用法只能查找上一个命令的参数。这种用法可以更灵活的搜索。

    • !?<文本> 在历史命令里查找上一个包含这个文本的命令
    • !?<文本>?:<^ $ * : :-> 上面的可以补全命令,如果只需要参数,可以使用这个
    sudo !?mv           # 移动刚才移动失败的文件
    cd !?mkdir?:*<tab>  # 进入刚才的创建的目录
    

    关于星号的用法

    这里的星号是通配符的增强用法,在*()中添加修饰限定匹配的文件。
    基本语法:

    m 修改日期

    m的默认单位是天,也可以使用小时h,周w,月M m=minutes,d=days(default)w=week,M=Month +n older than n,-n younger than, just n equal to' # N

    例子:

    • *(m0) 当天修改过的文件
    • *(^m0) 当天未修改过的文件
    • *(mh-3) 修改小于3小时的文件
    • *(mw+2) 修改超过两星期的文件

    L 文件大小

    (WIP)

    配置zsh

    这一部分介绍的是bash支持的用法,而zsh默认不支持。如何去配置,完成这些功能。
    C_X C_E 用默认的文本编辑器编辑命令
    M_. 倒序一次遍历命令的最后一个参数

  • 相关阅读:
    Java精通并发-Lock锁方法原理详解
    Java精通并发-Lock锁机制深入详解
    深层次揭示runBlocking与coroutineScope之间的异同点
    轻量级协程与线程执行比对分析
    第二阶段冲刺个人任务——four
    第二阶段冲刺个人任务——three
    第二阶段冲刺个人任务——two
    第二阶段冲刺个人任务——one
    输入法评价
    2017.12.30第十五周学习进度
  • 原文地址:https://www.cnblogs.com/zhuxiaoxi/p/10386470.html
Copyright © 2020-2023  润新知