创建脚本
首先在终端下创建一个脚本文件
|
|
给脚本赋予执行权限
|
|
打开脚本
使用zsh中装的sublime插件打开脚本文件
|
|
编辑脚本内容
|
|
执行脚本
|
|
如何全局能执行脚本
上面执行脚本要到指定的目录才行,如果我想全局都能运行脚本的话,可以通过配置脚本的根目录的环境变量,比如我的脚本都放在了desktop/脚本文件夹中,那么我可以在.zshrc中配置如下:
|
|
将脚本定制成应用
平时使用shell脚本的时候,每次都要找到shell脚本的执行文件非常麻烦,然后想到如果能将shell脚本制作成一个应用那就非常nice了。 下面就以平时用的比较多的反编译脚本jadx为例来实践。
先通过Alfred工具搜索出本机的Automator
工具:
选取应用程序
添加shell脚本
- 在左侧搜索 “运行 Shell 脚本”(Run Shell Script)。
- 拖动到右侧工作区。
- 在 Shell 选项里,选择 /bin/bash(或 /bin/zsh)。
- 在文本框里输入如下代码:
|
|
我是通过homebrew装的jadx工具,所以指定下自己的jadx目录。
保存应用
给应用定制图标
mac下应用的图标都是通过应用下的Info.plist文件来控制的:
它是通过CFBundleIconFile字段控制的,这里我把图标放在了应用的Resources文件下:
可以看到需要一个.icns的文件,这里我是通过在线网站https://cloudconvert.com/png-to-icns来实现png->icns的。一切替换完后,还需要刷新 Launch Services,否则 macOS 可能不会立刻识别新图标,执行如下脚本:
|
|
我在chatgpt搜索的时候,它是通过touch ~/Applications/Jadx.app
来执行的,但是我发现我的Jadx.app是在如下目录:
所以不用定位到Users/用户名,要不然会报错找不到Jadx应用。这里提一句mac下
~
表示的目录是Users/用户名
,比如我的如下:
操作完后,一个带图标的shell脚本的应用就创建成功了。
我的脚本工具集
apk比对脚本: apkcompare
字节码查看脚本: bytecode-viewer
批量删除指定后缀的图片脚本: delete_images
反编译apk的脚本: jadx