Alfred是macOS上屡获殊荣的应用程序,可通过热键,关键字,文本扩展等功能提高效率。搜索Mac和网络,并通过自定义操作来控制Mac来提高生产力。
点击左下角+
-->Templates
-->Essentials
-->Script Filter to Script
,填写name
和icon
,新建完成后如下:
双击第一个图形,进入修改页面,其中
keyword
填写关键字,如hosts
参数
选项选Argument Optional
,即参数选填language
选/bin/bash
,with input as argv
with input as argv
参数通过query=$1
获取with input as query
参数通过query="{query}"
获取
#!/bin/bash
HOSTS=""
# Handle action
if [[ "$1" != "" ]]; then
if [[ "$1" == "Null" ]]; then
exit
fi
HOSTS=`cat /etc/hosts | grep '^[^#].*' | grep $1`
else
HOSTS=`cat /etc/hosts | grep '^[^#].*'`
fi
echo "<?xml version='1.0'?><items>"
while read -r HOST; do
ARRAY=(${HOST// / })
echo "<item uid='${ARRAY[0]}' arg='${ARRAY[0]}'><title>${ARRAY[1]}</title><subtitle>${ARRAY[0]}</subtitle></item>"
done <<< "$HOSTS"
echo "</items>"
alfred workflow
主要是通过构建如下结构并输入:
<?xml version="1.0" encoding="utf-8"?>
<items>
<item uid="id" arg="参数,可传递到下一个流程" valid="yes" autocomplete="yes">
<title>标题</title>
<subtitle>副标题)</subtitle>
<icon>图标,缺省显示应用图标</icon>
</item>
</items>
我们需要将选中的ip
复制到粘贴板