博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
无插件用Terminal/TotalTerminal的开当前finder位置
阅读量:5821 次
发布时间:2019-06-18

本文共 1200 字,大约阅读时间需要 4 分钟。

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

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

我搜到,里面讲了如何用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 aliasend tellon error    set the this_folder to path to desktop folder as aliasend tryset 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都可行,多方便。

转载于:https://www.cnblogs.com/walkerwang/p/3579035.html

你可能感兴趣的文章
Java I/O操作
查看>>
Tomcat性能调优
查看>>
Android自学--一篇文章基本掌握所有的常用View组件
查看>>
灰度图像和彩色图像
查看>>
通过vb.net 和NPOI实现对excel的读操作
查看>>
TCP segmentation offload
查看>>
java数据类型
查看>>
数据结构——串的朴素模式和KMP匹配算法
查看>>
FreeMarker-Built-ins for strings
查看>>
验证DataGridView控件的数据输入
查看>>
POJ1033
查看>>
argparse - 命令行选项与参数解析(转)
查看>>
一维数组
查看>>
Linux学习笔记之三
查看>>
修改上一篇文章的node.js代码,支持默认页及支持中文
查看>>
Php实现版本比较接口
查看>>
删除设备和驱动器中软件图标
查看>>
第四章 TCP粘包/拆包问题的解决之道---4.1---
查看>>
html语言
查看>>
从源码看集合ArrayList
查看>>