配置命令行启动应用程序

场景需求

在命令行中启动应用程序是常见的需求,输入一个命令和路径,就可以在输入的路径下启动对应的应用程序,这样的方式很方便,免得去点击应用程序图标才能打开,类似于vscode的code命令。

方法

以下方式都针对Mac OS系统

终端输入的命令会在$PATH环境变量下寻找,$PATH包含了几个目录,通常选择/usr/local/bin目录来存放新增的命令。

方式一

将应用程序的可执行文件链接到usr/local/bin目录下,这里以CocosCreator应用程序为例。

  • 打开Application目录,找到CocosCreator图标,右键显示包内容,找到CocosCreator可执行文件的位置(/Applications/CocosCreator.app/Contents/MacOS/CocosCreator)。
  • 使用命令ln -s /Applications/CocosCreator.app/Contents/MacOS/CocosCreator /usr/local/bin/cocos生成链接文件cocos(即Mac OS中的替身文件)
  • 在命令行输入cocos即可打开CocosCreator应用程序

方式二

方式一存在的问题就是在终端打开应用程序时,应用程序一直处于前台运行状态,终端一直被占用着,并且打开过程中的输出信息会显示在终端。因此,要使用后台启动应用程序的方式,且让应用程序的log文件不显示在标准输出流中。

  • 编写一个shell脚本,脚本内运行后台启动应用程序且不显示log输出流
  • 将shell脚本链接到全局
shell脚本

cocos.sh文件内容如下

#!/bin/bash
/Applications/CocosCreator.app/Contents/MacOS/CocosCreator >CocosCreator.txt 2>&1 &

其中

  • 命令末尾的&表示后台启动
  • >CocosCreator.txt 2>&1表示将输出重定向到日志文件。
    • 这里的>是定向符,可以将输出打印到日志文件,CocosCreator.txt 就是新建的日志文件。> 默认为标准输出重定向,2>&1 意思是把 标准错误输出 重定向到 标准输出。
shell脚本链接到全局

使用和方式一一样的链接方式,将上述shell脚本cocos.sh链接到全局usr/local/bin目录下

ln -s <自定义的路径>/cocos.sh /usr/local/bin/cocos

这里的自定义路径是存放上述shell脚本的目录。

通过这两步的操作,就可以在终端直接执行cocos命令来后台打开CocosCreator应用程序,并且没有在终端输出日志信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值