这个是一个有趣的试验 所谓shell函数文件本身就是一个shell脚本,只是里面写的都是函数罢了
如果感兴趣的可以收藏一下,会不定期在这个帖子里更新
这是一个体验性的东西,就把一些管道命令的具体功能,包到函数里面方便在脚本中使用,属于模块化引用吧
函数文件使用ZIP文件打包读取执行,目的就是防止误修改,应为目前我找不到更好的办法来保证函数文件的安全性,压缩包还可以添加密码。好处是可以把一些碎片化的功能整合在一个shell函数文件里面,来直接调用函数名。我这种记性不好的人整合在一起就直接在里面找来用就可以,不需要每次都去百度AI找代码。
202507250622075305_i8520_2025.07.25.zip
#!/bin/bash
# 检查 zip 是否安装
if command -v zip &> /dev/null; then
# 如果存在,输出已安装及版本信息
echo "ZIP 已安装"
# 显示版本信息
zip --version | head -n 1
else
# 如果不存在,提示未安装
echo "ZIP 未安装"
echo "建议使用以下命令安装:"
echo "sudo apt update && sudo apt install zip unzip"
exit 1
fi
#------------------------------
# 新的使用方式
# 读取zip压缩包里面的载函数文件
# 然后在加载,防止无意中修改函数文件
# 使用归档无压缩 zip -r0 my_archive.zip my_directory
# 优点更靠谱-心里作用 ,缺点执行慢一点,但是不会很明显 平均慢 0.03秒
#------------------------------
zip_dir_name="ShellFunctionLibrary"
source <(unzip -p ${zip_dir_name}.zip ${zip_dir_name}/File_And_String_Attributes.shellFunction)
source <(unzip -p ${zip_dir_name}.zip ${zip_dir_name}/New_String.shellFunction)
#------------------------------------------------------------------
# 旧的使用方式 直接加载函数文件
# 优点执行块一点 ,缺点有点不靠普
# source ./ShellFunctionLibrary/File_And_String_Attributes.shellFunction
# source ./ShellFunctionLibrary/New_String.shellFunction
#------------------------------------------------------------------
文件与字符串属性 123456 | 小写字母改大写字母
查找目录中的IP文件 ./TestData 192
echo "rwrwETGERTfer" | 小写字母改大写字母
echo -------------------------
删除重复的行 ./TMP/ip123.TXT
echo -------------------------
aaa=$(cat ./TMP/ip123.TXT)
删除重复的行_A ${aaa}
评论区