MAC工作机提升工作效率的tips

时间:2022-06-20
本文章向大家介绍MAC工作机提升工作效率的tips,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

前言:

MAC和Windows环境不一样。Window靠着资源管理器explorer.exe,并且提供桌面环境和shell工具比如xshell。工作环境切换到MAC,MAC属于类Unix操作系统(*NIX)。由于不同的系统框架设定,Windows好用的工具软件在MAC不一定有一样好用的用户体育。MAC OSX采用的是另一种设计,Linux的桌面环境(Linux KDE, GNOME等)和文件设备管理器 (Nautilus, Dolphin等).

一、mac高效shell软件

MAC上类似与Xshell的软件,目前流行度第一的还是OS X系统自带的iterm2。

iterm2开启多个会话。支持搜索拦,命令自动补齐和多配置设定。iterms还有比xshell更好用的一线使用技巧。

比如:

  • 通过打开iTerm > Preferences (或⌘ + ,),在keys->Hotkey选项中勾选“Show/hide all windows with a system-wide hotkey”。此后就可以方面通过组合键(options+空格 隐藏/显示iterms2窗口)
图1、开启一键隐藏/显示iterms配置
  • 开启新的Tab页( ⌘ + t.),在当前页面下水平开启多个页(⌘ + d,垂直是⌘ + d +shift)。
图2、新建多个标签页
  • 左右移动tab页面的命令键是(⌘ + Shift + ]或者⌘ + Shift + [)
  • 支持在shell终端(包括历史执行的结果,整个会话的执行历史相当于一个文本)搜索字符串(⌘ + f),查找下一个(⌘ +g)
  • 支持将shell命令下发到多个tab会话中(⌘ + Option + I,再次敲击快捷键关闭此功能)
图3、命令同时下发到多个会话
  • 清理终端屏幕(⌘ + k,或者ctrl+l),ctrl+l会保留当前输入的命令行缓冲。
  • 最大化窗口(⌘ + Shift + = 或者⌘ + Enter),⌘ + Shift + = 会保留菜单栏。
  • 改变字体大小(⌘ + + 或者⌘ + -),找到光标位置(⌘ + /)

二、iterms2可用自由的拖拽上传下载

curl -L https://iterm2.com/misc/install_shell_integration.sh | bash

图4、装完scp上传下载插件

再本地mac shell和远程的shell(要执行上传下载的机器)都装上。然后会出现一个蓝色的右三角图标。

  • 下载文件,选择文件,右击选择download with scp from,
图5、下载文件
  • 因为说通过scp上传,在执行scp上传之前,记得把host_name的变量改成IP地址

export iterm2_hostname="你的ip"

upload: 把文件拖拽至shell,不要放开鼠标,接着按下option键。出现将执行scp上传的确认对话框。

三、从bash到Zsh到fish

shell上一个程序把键盘输入的命令发送给操作系统执行,常用的比如Bash(Bourne Again Shell)。Zsh作为高阶版的Bourne shell扩展。Zsh做了命令行的补充(数百个命令的扩展),继承了bash的glob特性(不需用find,直接在执行命令支持正则的找到文件。比如说ls go+(.bak) 找到一个文件名为go并且出现一次bak的文件,并把它list出来。Zsh还支持命令历史继承,改善的变量和array支持,一个输入缓冲中支持多行命令编辑,命令拼写校正。Zsh兼容在bash,执行/bin/sh相当于执行zsh。甚至可选模块(tcp,uds网络支持,数学运算),where命令支持在所有的PATH环境变量定义路径找到命令,路径文件夹缩写等等。

3.1. fish特性

Fish(Friendly Interactive SHell),Fish致力于作出用户交互性更好的shell产品。它的特点包括

  • 自动完成填充和自动建议

比如说敲了ls -he, 他会用暗灰色字体建议输入ls -help. 当从敲命令的第一个字母开始,这个 建议实时刷新。一开始会标红,因为命令不是正确完整的,一旦敲入所有的命令,红色的字体会变蓝色。

图6、fish的提示和自动补全

按方向键右自动填充建议,tab键打开补齐选项, 选项说根据man页面的选项提示。tab键按完再按空格进行搜索。

  • 命令输入错误的更正信息更易读懂,比如fish支持and和or替换&&和||。 mkdir ~/something; and echo "Done"; or echo "error"
  • 支持命令嵌套,统计一个工程每个文件的代码量,wc -l (ls -a myproject).
  • 总之fish脚本语言更易用,语法清晰简洁,有点像python,比较下列两种不同shell的写法
#bash
export PATH=~/bin:¥(PATH) 
.#fish
set -gx PATH ~/bin    

3.2. 安装fish

linux,yum install fish(或者apt)。chsh -l找到fish的二进制路径,chsh -s /usr/bin/fish

  • 另外打开web配置页面,fish_config, 浏览器访问http://localhost:8000.因为服务器的监听说根据网卡的配置的ip,如果说云虚拟机,此项可能会失败
  • 自动补齐的配置放在~/.config/fish/completions。然后再执行fish_update_completions