• Linux中快速回到N级上层目录


    https://mp.weixin.qq.com/s/iOLZpa5hCFR6lC-D4-OGmg

     

    在Linux系统中,使用自定义命令,快速回到指定层级的上层目录。

     

    1. 问题

    在使用Linux的过程中,经常进入到很深的目录:

    而后又要回到某个上层目录,有没有什么好的方法呢?

     

    2. 解决方法

    回到上层目录的命令是:

    那么最简单的方法就是不停的上翻执行cd ..命令:

    可是一般笔记本向上翻的箭头比较小,不是很方便。

     

    再有一个方法就是使用多个../进行切换:

    且不说无名指和小指打这两个字符不方便容易累,也很容易多打一个点而使速度降下来。

     

    要是能有cd .....这样的命令就好了:

     

    3. 自定义命令

    既然cd命令没有那样的用法,为何不自己定义一个呢?

    a. 既然命令与cd和..有关,那就叫c.(可以根据喜好自定义);

    b. 使用参数作为回退目录的级数,一个点代表回退一级;

     

    命令实现如下:

    其中:

    a. 使用第一个参数,将其中的“.”替换为“../”;

    b. 调用cd命令实现目录切换;

     

    使用效果如下:

     

    4. 提升兼容性

    可以看到,命令当中“.”比较多,包括命令中的点和参数中的点。留意打多少个点的时候,也会忘记打空格,记起打空格的时候,可能为时已晚,导致命令错误,需要修改。

     

    那么就稍微调整一下,提升兼容性:

    a. 可以不打空格:

    b. 可以晚打空格:

    c. 为了统一,约定:命令中紧跟着字符c后面的一个“.”,属于命令,不用于计算层级数;

     

    如何实现呢?

    a. 命令“c.”不带参数,表示留在当前目录;

    b. 命令“c..”“c...”等需要增加新的命令;

     

    5. 新的实现

    首先,修复命令“c.”不带参数返回home目录的问题:

     

    然后,把这个函数变为公共函数,并定义新的“c.”命令:

     

    定义“c..”命令:

    这里在命令参数的基础上,把命令中的“.”也转换为“_c.”命令的参数。

     

    其他定义类似:

    定义到“c.........”(包含9个点),单命令可以回退的8级目录,层级数目基本上够用了。

     

    使用效果如下:

     

     

    z. 附录

     

    ​相关源码(文中都有)附录如下:

    -----------------------------------------------------------------------------
    这是一篇付费文章,请移步付费阅读全文,谢谢!
    文章链接:https://mp.weixin.qq.com/s/iOLZpa5hCFR6lC-D4-OGmg

  • 相关阅读:
    自定义asp.net mvc Filter 过滤器
    基于委托的C#异步编程的一个小例子 带有回调函数的例子
    ASCII、Unicode和UTF-8编码的区别
    Specification模式的一个不错的示例代码
    codesmith 自动生成C# model 实体模板
    Quartz.NET 实现定时任务调度
    FtpHelper类匿名获取FTP文件
    crc32 根据字符串获取校验值
    机器学习能做什么
    RunHelper,一个为跑步而设计的开源的android app
  • 原文地址:https://www.cnblogs.com/wjcdx/p/15856012.html
Copyright © 2020-2023  润新知