途牛原创|打造Mac高效命令行环境

2016-01-14 途牛无线中心 张军

对一个合格的开发人员来说,命令行技能,即便不是最重要的,也应该是相当重要的。Mac下的命令行工具默认已经比较好用,熟悉Linux命令的也很容易就上手了。感谢Square技术团队共享出来的一些工具的配置,简单几步就可以构建好一套环境:
git clone https://github.com/square/maximum-awesome
cd maximum-awesome
rake 下面会来介绍一下自己用到的工具,它们组合起来构成了强大的命令行环境。

iTerm2
Mac自带的其实还行,不过有很多理由让我们选择iTerm2。比如快捷键丰富,自带的或者自定义都很方便,支持xterm-256色,方便在终端中配置Vim的代码颜色。iTerm2的各种技巧在网上都比较多,这里就不列了。我个人比较喜欢将它的颜色设置成Solarized Dark主题,打开之后CMD+Enter全屏,配合接下来的工具,在大屏上爽到爆。zsh
zsh使用上除了可以兼容bash外,还有不少新的特性可以减少我们的输入:
1、连续tab,可以给出所有的补全列表。比如输入cd,连续2次tab,当前目录下的文件夹就都会显示出来。2、智能查找历史命令,用向上方向键查找历史命令时,支持限制查找。比如输入vim,然后在按方向键,则只会查找用过vim的命令。此外,还有其他很多特性......
设置当前用户使用 zsh:chsh -s /bin/zsh 根据提示输入当前用户的密码就可以了。

使用zsh,当然也就少不了开源的oh-my-zsh了,可以省去你自己配置zsh的麻烦。安装oh-my-zsh也很方便,在此之前确保你已经装了git,Mac应该是已经装好了git的。sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
重新打开,去~/.oh-my-zsh看下,应该是这个样子:能够提示你当前git库的分支。
tmux
tmux是一个用于终端复用的软件,它允许你创建会话,只要你愿意,随时可以离开或者返回该会话。

下图就是包装在tmux中的vim和zsh:


这个会话中有三个窗口,当前激活的是第3个窗口"-boot-sammples*”。当前窗口又分了3个区,左边是vim打开的Java代码,右上是正在执行的程序,日志输出到控制台,右下则是一个zsh窗格。

安装tmux:brew install tmux
配置tmux默认使用zsh,在~/.tmux.conf加入这么一行:set-option -g default-shell /bin/zsh
如果已经使用了maximum-awesome共享的配置,会发现tmux默认的快捷键前缀Ctrl-b已经被改成了Ctrl-a。为了按键方便,我把Ctrl和Caps Lock键换了下位置(在系统偏好设置->键盘->修饰键中修改)。 
以tmux窗口截图为例:Ctrl-k/j/h/l 可以上下左右切换激活的窗格,熟悉Vim操作的应该都比较好适应;
Ctrl-a再按下2 就可以激活第二个窗口;
Ctrl-a,再按d 就可以退出当前tmux会话;
tmux ls 可以看到会话列表;
tmux attach-session -t <session名> 就可以再次回到退出的会话。

虽然tmux可以很方便的创建窗口和窗格,但是如果我们经常会用到某一个布局,肯定不愿意每次都去手动创建一次。这个时候我们就可以安装tmuxinator,它可以通过配置文件来为每个tmux会话定制布局了,真的很棒。 tmuxinator是一个Ruby的gem包,可用于创建tmux会话。在命令行下安装tmuxinator:gem install tmuxinator
安装好之后,就可以在shell中运行tmuxinator或mux命令。我们可以这样创建一个配置文件:mux new java 按下回车之后,就会自动打开文件~/.tmuxinator/java.yml 编辑并保存你的配置,之后:mux java 就可以启动tmux会话,布局就是和配置文件java.yml中的一致。
最后
下图是通过maximum-awesome项目配置好的Vim编辑器,看上去是不是有点IDE的味道?Vim扩展相关的主题就不在这里展开,有兴趣的小伙伴可以自己去尝试下。

对一个合格的开发人员来说,命令行技能,即便不是最重要的,也应该是相当重要的。Mac下的命令行工具默认已经比较好用,熟悉Linux命令的也很容易就上手了。感谢Square技术团队共享出来的一些工具的配置,简单几步就可以构建好一套环境:
git clone https://github.com/square/maximum-awesome
cd maximum-awesome
rake 下面会来介绍一下自己用到的工具,它们组合起来构成了强大的命令行环境。

iTerm2
Mac自带的其实还行,不过有很多理由让我们选择iTerm2。比如快捷键丰富,自带的或者自定义都很方便,支持xterm-256色,方便在终端中配置Vim的代码颜色。iTerm2的各种技巧在网上都比较多,这里就不列了。我个人比较喜欢将它的颜色设置成Solarized Dark主题,打开之后CMD+Enter全屏,配合接下来的工具,在大屏上爽到爆。zsh
zsh使用上除了可以兼容bash外,还有不少新的特性可以减少我们的输入:
1、连续tab,可以给出所有的补全列表。比如输入cd,连续2次tab,当前目录下的文件夹就都会显示出来。2、智能查找历史命令,用向上方向键查找历史命令时,支持限制查找。比如输入vim,然后在按方向键,则只会查找用过vim的命令。此外,还有其他很多特性......
设置当前用户使用 zsh:chsh -s /bin/zsh 根据提示输入当前用户的密码就可以了。

使用zsh,当然也就少不了开源的oh-my-zsh了,可以省去你自己配置zsh的麻烦。安装oh-my-zsh也很方便,在此之前确保你已经装了git,Mac应该是已经装好了git的。sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
重新打开,去~/.oh-my-zsh看下,应该是这个样子:能够提示你当前git库的分支。
tmux
tmux是一个用于终端复用的软件,它允许你创建会话,只要你愿意,随时可以离开或者返回该会话。

下图就是包装在tmux中的vim和zsh:


这个会话中有三个窗口,当前激活的是第3个窗口"-boot-sammples*”。当前窗口又分了3个区,左边是vim打开的Java代码,右上是正在执行的程序,日志输出到控制台,右下则是一个zsh窗格。

安装tmux:brew install tmux
配置tmux默认使用zsh,在~/.tmux.conf加入这么一行:set-option -g default-shell /bin/zsh
如果已经使用了maximum-awesome共享的配置,会发现tmux默认的快捷键前缀Ctrl-b已经被改成了Ctrl-a。为了按键方便,我把Ctrl和Caps Lock键换了下位置(在系统偏好设置->键盘->修饰键中修改)。 
以tmux窗口截图为例:Ctrl-k/j/h/l 可以上下左右切换激活的窗格,熟悉Vim操作的应该都比较好适应;
Ctrl-a再按下2 就可以激活第二个窗口;
Ctrl-a,再按d 就可以退出当前tmux会话;
tmux ls 可以看到会话列表;
tmux attach-session -t <session名> 就可以再次回到退出的会话。

虽然tmux可以很方便的创建窗口和窗格,但是如果我们经常会用到某一个布局,肯定不愿意每次都去手动创建一次。这个时候我们就可以安装tmuxinator,它可以通过配置文件来为每个tmux会话定制布局了,真的很棒。 tmuxinator是一个Ruby的gem包,可用于创建tmux会话。在命令行下安装tmuxinator:gem install tmuxinator
安装好之后,就可以在shell中运行tmuxinator或mux命令。我们可以这样创建一个配置文件:mux new java 按下回车之后,就会自动打开文件~/.tmuxinator/java.yml 编辑并保存你的配置,之后:mux java 就可以启动tmux会话,布局就是和配置文件java.yml中的一致。
最后
下图是通过maximum-awesome项目配置好的Vim编辑器,看上去是不是有点IDE的味道?Vim扩展相关的主题就不在这里展开,有兴趣的小伙伴可以自己去尝试下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 使用Python脚本输入途牛机票日期很简单。下面是一个示例脚本: ```python date = input("请输入机票日期(格式:YYYY-MM-DD):") print("您选择的机票日期是:" + date) ``` 运行这个脚本后,程序会要求您输入机票日期。您只需按照YYYY-MM-DD的格式输入日期,然后按下回车键。脚本会将您输入的日期打印出来。 例如,如果您输入的是2022年10月1日,脚本会输出:您选择的机票日期是:2022-10-01。 这个示例只是展示了如何获取用户输入的日期,并在控制台中显示。根据您的具体需求,您可以对输入日期进行其他处理,比如校验日期格式、计算日期间隔等等。 ### 回答2: 要用Python脚本输入途牛机票日期,可以使用input函数来获取用户输入的日期。下面是一个简单的示例代码: ``` # 通过input函数获取用户输入的日期 date = input("请输入你想查询机票的日期(格式为YYYY-MM-DD):") # 打印用户输入的日期 print("你输入的机票日期是:", date) ``` 运行这段代码后,程序会提示用户输入日期,并将用户输入的日期存储在变量`date`中。之后代码会打印出用户输入的日期。 这只是一个简单的示例代码,你可以根据具体需求进行二次开发,比如添加日期格式验证、调用途牛机票接口进行日期查询等。 ### 回答3: 可以用Python脚本来输入途牛机票日期。首先,需要安装Python解释器和相关的库。首先,我们使用“pip”命令来安装所需的第三方库。打开终端窗口并输入以下命令: ``` pip install selenium pip install webdriver_manager ``` 接下来,我们创建一个Python脚本文件,并导入所需的库: ```python from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC # 创建浏览器实例 driver = webdriver.Chrome(ChromeDriverManager().install()) # 打开途牛机票页面 driver.get("https://flights.tuniu.com/") # 选择日期输入框并点击 date_input = driver.find_element(By.XPATH, "//input[@placeholder='请输入出发日期']") date_input.click() # 等待日期选择器加载完毕 WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, "//div[@class='tuniu_datepicker_con']"))) # 输入日期 date_value = "2022-01-01" # 这里填入你想要选择的日期 date_cell = driver.find_element(By.XPATH, f"//div[@class='tuniu_datepicker_con']//td[@data-date='{date_value}']") date_cell.click() # 关闭浏览器 driver.quit() ``` 上述脚本通过使用Selenium库来模拟用户操作,即打开途牛机票页面、点击日期选择框、选择指定日期,然后关闭浏览器。你可以根据自己的需求修改日期值,以选择不同的日期。请注意,这里使用的是Chrome浏览器与Chrome驱动程序,你需要根据你的浏览器类型下载对应的驱动程序,并将驱动程序的路径添加到系统环境变量中。另外,要确保安装了相应的Python库,以便脚本能够正常运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值