从win7开始,在资源管理器内按住shift再右键,是可以选择“在当前位置打开命令行”的,相当有用,这个命令在mac下是如何实现的呢?

前提:我讲的是TotalTerminal下的方案,原生的terminal.app和iterm2可以选择cdto 或者Go2Shell

我搜到这篇文章,里面讲了如何用Go2Shell来打开TotalTerminal,相当复杂,最后还推荐你用iTerm2,晕倒。我用了一下iTerm2,发现还是喜欢total,那就继续寻找吧。
然后翻来翻去,其实结果都差不多了,市面上就那么几款软件。于是我下载cdto来试了下。因为TotalTerminal把原生Terminal接管了,所以其实也生效了。但是我想要的效果是命令行窗体从顶部滑下那种,而cdto这种软件生效是要新开一个窗体,一点都不酷,也就是说,所有之前的努力我都放弃了,我要的并不是新开窗体的方案。

结果找到这篇文章,小修改后就成功了。核心在:为一个cd命令建立别名,执行这个别名其实就是执行了一次cd到当前目录的代码。这样你只要每次把terminal窗口滑出来后执行一下就可以了,虽然多了一个步骤,但是绿色环保。
进一步讲解,这个CD命令又干了什么呢?它执行了一段脚本,把当前窗口的路径给输出了出来。
最终我是这么做的:

  1. 编写脚本
    1. 我存到了用户文档目录下,新建了一个scripts的文件夹:
      vim $HOME/Documents/scripts/GetCurrentFinderFolder.cspt
    2. 复制如下内容后保存退出:
      tell application "Finder"
      set this_folder to (folder of the front window) as alias
      end tell
      on error
      set the this_folder to path to desktop folder as alias
      end try set full_path to POSIX path of this_folder
  2. 设置别名,我把别名存到了.bash_profile而不是上述文章中的.bashrc,原因是我测试失败了,但原因可能跟我没有完全重启terminal有关,而不是文件的正确与否,应该都是可以的:alias cwd="cd \"\`osascript $HOME/Documents/scripts/GetCurrentFinderFolder.scpt\`\""
  3. 完全退出TotalTerminal,或者你干脆重启一下。这时候再打开terminal,输入cwd,看看效果吧。
  4. 你们也许已经看出来了,用别名的方案,其实已经不止是TotalTerminal的解决方案了,任何Terminal都可行,多方便。

无插件用Terminal/TotalTerminal的开当前finder位置的更多相关文章

  1. EasyNVR、EasyDSS二次开发之:RTMP、HLS流在web页面进行无插件播放示例Demo代码

    不管是基于EasyNVR还是EasyDSS,都是支持无插件直播,这也是未来视频直播的一个趋势.对于传统的浏览器插件播放谁用谁知道: 以上是软件自带播放展示 背景需求 对于EasyNVR和EasyDSS ...

  2. 无插件Vim编程技巧

    无插件Vim编程技巧 http://bbs.byr.cn/#!article/buptAUTA/59钻风 2014-03-24 09:43:46 发表于:vim  相信大家看过<简明Vim教程& ...

  3. 无插件VIM编程技巧(网摘)

    无插件VIM编程技巧 原文出处:[陈皓 coolshell] 相信大家看过<简明Vim教程>也玩了<Vim大冒险>的游戏了,相信大家对Vim都有一个好的入门了.我在这里把我日常 ...

  4. 无插件的大模型浏览器Autodesk Viewer开发培训-武汉-2014年8月28日 9:00 – 12:00

    武汉附近的同学们有福了,这是全球第一次关于Autodesk viewer的教室培训. :) 你可能已经在各种场合听过或看过Autodesk最新推出的大模型浏览器,这是无需插件的浏览器模型,支持几十种数 ...

  5. 无插件纯web 3D机房 (第四季:大型园区、地球仪效果和其他扩展应用)

    前言 初次见面的朋友们大家好,这篇文章是"无插件纯web 3D机房"系列的第四季,感兴趣的朋友可从头开始观看,以下是正确的阅读顺序: 无插件纯web 3D机房(第一季:从零开始搭建 ...

  6. HTML5 CSS3 经典案例:无插件拖拽上传图片 (支持预览与批量) (二)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/31513065 上一篇已经实现了这个项目的整体的HTML和CSS: HTML5 C ...

  7. jquery轮播图片(无插件简单版)

    轮播图(第三版)[2016-2-26] 工作中用的,改写了半透明蒙版,可以兼容ie7 <script type="text/javascript" src="htt ...

  8. Knockout.js 数据验证之插件版和无插件版

    本文我们将介绍使用 Knockout.js 实现一些基本的数据验证.就如我们在标题里提到的,我们会使用两种方法来创建数据验证方法. 使用自定义方法,不需要任何插件 最简单的方法是使用已有的插件 如果你 ...

  9. EasyNVR H5无插件RTSP直播方案在Windows server 2012上修复无法定位GetNumaNodeProcessorMaskEx的问题

    今天遇到一个客户在使用EasyNVR无插件安防直播解决方案的时候,在Windows Server 2012上出现一个问题提示: 经过反复的查找,虽然提示上显示问题出在KERNEL32.dll上,但是已 ...

随机推荐

  1. iOS - UITableView加载网络图片 cell适应图片高度

    使用xib创建自定制cell   显示图片   创建一个继承UITableViewCell的类   勾选xib 如下是xib创建图 xib 向.h拖拽一个关联线 .h .m 2.代码创建(使用三方适配 ...

  2. 多平台的网站实现单点登录系统(SSO)的开发思路 让你的会员中心更加统一(参考资料)

    单点登录并不是一个新鲜的玩意儿,比较官方的解释是企业业务整合的解决方案之一,通俗来讲SSO就是一个通用的用户中心,国内比较流行的UCenter就是一套单点登录解决方案.而近期以CSDN明文存储用户密码 ...

  3. 【Unity笔记】提示框ToolTips大小自适应,及其闪烁的问题

    需求:制作了一个提示框,当鼠标移入背包格子内,显示提示框,且提示框位置跟随鼠标移动.当鼠标移出背包格子,隐藏提示框. 制作提示框ToolTips 因为提示框的大小要求随着显示的文本内容长度而自动大小适 ...

  4. [WPF源码分析]ContentControl依赖项属性的双向绑定,two-way binding view's DependencyProperty and ViewModel's variable

    问题:自定义控件的依赖项属性和VIewModel中的变量不能双向绑定 解决思路:对比.net源码 PresentationFramework  /   System.Windows.Controls ...

  5. pthread_cond_wait和pthread_cond_signal以及互斥变量的使用情况

    #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <pthread.h& ...

  6. Aspose Linux下字体找不到报错

    http://www.aspose.com/docs/display/cellsnet/Smart+Markers http://www.aspose.com/docs/display/cellsja ...

  7. 图像颜色--opencv scalar

    Scalar定义可存放1—4个数值的数值,其结构体如下: typedef struct Scalar { double val[4]; }Scalar; 例如:Scalar s: 如果使用的图像是1通 ...

  8. IIS 7上部署PHP

    前言 前段时间整了一个挂Q的平台.源代码是从网上下载的,后期稍微调整了一下链接和title之类的文字就上线了.详细在这里. 运行了一段时间,除了偶尔出现QQ下线上线,整体效果基本上符合预期,个人感觉很 ...

  9. Hbase 学习(三)Coprocessors

    Coprocessors 之前我们的filter都是在客户端定义,然后传到服务端去执行的,这个Coprocessors是在服务端定义,在客户端调用,然后在服务端执行,他有点儿想我们熟悉的存储过程,传一 ...

  10. Freemarker操作字符串

    1.substring(start,end)从一个字符串中截取子串start:截取子串开始的索引,start必须大于等于0,小于等于endend: 截取子串的长度,end必须大于等于0,小于等于字符串 ...