shell脚本中执行python脚本,处理字符串,同时复制到剪贴板
需求:给字符串中的&之前添加转义字符
1、使用python脚本处理字符串,需要在main方法中接受入参:convert.py
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import sys
def convert_chars( chars ):
return chars.replace('&','\&')
if __name__=="__main__":
print(convert_chars(sys.argv[1]))
2、在shell脚本中,调用convert.py,同时把shell脚本中输入的数据,传递到convert.py的main函数中:
convert.sh:
# print
python3 /Users/xxx/Downloads/convert.py "$1"
# pbcopy
python3 /Users/xxx/Downloads/convert.py "$1" | pbcopy
3、调用sh脚本:
①cd到convert.sh所在目录
②执行 ./convert.sh "xx",双引号中即是我们需要转换的字符串,最终结果会输出到终端中,同时会复制到剪贴板中。
4、给zsh配置alias:方便调用
alias xxxconvert='./xxx/convert.sh'
5、在zhs中使用:xxxconvert "xxx"
xxxconvert "asdfasdfasdf&123123"
此时结果会打印在下方,同时会复制到剪贴板中。