美文网首页
后台开发之mac下开发软件分享(一): Shell相关

后台开发之mac下开发软件分享(一): Shell相关

作者: tangxqa | 来源:发表于2018-12-12 23:52 被阅读0次

注:文中出现的所有软件,要么免费,要么可以在以下两个网站中下载到热心网友强制修改的免费版:
xclient.info
爱情守望者
但是软件开发不易,倾注了开发者大量的劳动和心血,希望大家支持和购买正版!

最近从牙缝里扣了又扣,抠出点钱买了个macbook。作为一个自打计算机启蒙一直用windows的人来说,初用mac OS是痛苦的。我甚至一度认为网上那些无脑吹mac的人是库克请的水军。但是一段时间摸索下来,发现mac终归是mac,你大爷终归是你大爷。

好了,废话不多说,开始唠一唠我常用的这些软件。在这里我不写软件是干啥的,具体怎么配。因为这些只要根据名字在度娘或者谷歌上面搜一搜,一大堆,我就没必要再去重复造轮子。我只写写这些软件在我的日常工作中发挥了哪些神奇的作用。

1、iterm

image.png

天啦噜,这个软件不知道应该怎么形容。amazing! fantastic! wonderful! graceful! what the fuck谁写的软件这么好用!

场景1:管理后台机器

场景再现

因为mac本质上是一个unix系统,因此在连接linux机器时也就没必要用第三方的ssh软件,直接在终端一个ssh命令就搞定。如果有人过来找你,说那个XXX,你看看后台日志怎么回事,怎么宕机了。这个时候你心里一边犯嘀咕,一遍云淡风轻的开始输命令:

ssh -p22 root@180.76.***.189

咔,一个回车!
没进去。。得输密码! 输完密码,咔,一个回车!
没进去。。密码输错了! 重新输入,咔,一个回车!
没看到日志。。 得cd进目录!

如此一折腾,旁边找你人估计心里想:装啥啊,还是我xshell来得快。。。
这个时候,就问你尴尬不!这还是操作一台机器,如果你是搞运维的,成片的机器,那还干不干活了!

解决方案: iterm + sshpass

首先看疗效:

iterm.gif

然后看看这个动图里,iterm都为我们干了啥:
首先是iterm打开后,处于code目录下(绿色的),然后我们选择登陆到哪一台服务器(快捷键:command+o)。然后iterm执行如下命令,类似于一个workflow.

/usr/local/bin/sshpass -f /Users/tangxqa/develop/sshpass/haier_baidu_test ssh -p22 root@***.76.***.189
cd /root/src/rrs.com/rrsservice/

其中sshpass保存了服务器的登录密码。


image.png

具体sshpass怎么用,问度娘。

以上,自动完成了我们连接服务器、输入密码、cd到默认目录的全过程。

场景2 命令自动提示等

QQ20181212-235129.gif

这个就用到了一个插件,叫 zsh。这个zsh才是真正的fucking amazing! 具体怎么个amazing法,同样自行百度。它支持上百种plugins,基本上想得到的想不到的都有!

2、transmit

image.png

虽然我很不乐意这样去做对比,但有人可能会问了:如果把iterm比作xshell,那xftp用什么替代呢?
答案就是:transmit

image.png

transmit的操作如丝般顺滑,图片不清晰,但是可以感受一下:


QQ20181212-234816.gif

3、ssh tunnel

image.png

场景:

我们需要搭建开发环境,使得本地的web server/api server 能够访问位于云服务器上局域网环境中的数据库,例如百度云提供的数据库服务。这些数据库服务器可以在百度云的机器上直接访问,而不能在公网环境下通过公网ip访问。这个时候可以用百度云的普通server建一个tunnel,从而实现数据访问。在xshell中也有类似功能,中文翻译做:隧道。

界面展示:

image.png

如图便是建立了三个tunnel,分别连向了两个关系型数据库服务器和一个redis服务器。
举例来说第一条隧道连接,使用时的访问方法,就是直接localhost:13306即可。
当然,直接用ssh命令也可解决,但麻烦不是。程序员就应该能偷懒的时候尽可能偷懒,美其名曰:解放和发展生产力~
命令行:

ssh -CfNg -L 16306:postgresql94.rd*****lwr2zr.rds.bj.baidubce.com:3306 root@180.***.***.189

4、Go2Shell

image.png

场景:

有时候,我们在finner中找文件,找了半天。哎,找到了,想要在当前命令撸一行命令,怎么办?
普通程序猿:右键 -> 服务 -> 新建位于文件夹位置的终端窗口
二逼程序员:打开终端 -> 把刚才的那个文件夹拖进去 或者 打开终端,逐层cd进去
文艺程序员:Go2Shell点一下:

image.png
操作展示:
go2shell.gif

和Shell相关的先写这么多,想起来的话会及时更新~

相关文章

网友评论

      本文标题:后台开发之mac下开发软件分享(一): Shell相关

      本文链接:https://www.haomeiwen.com/subject/ptymhqtx.html