背景
不想听我罗嗦,可以直接跳转到最后。
笔记本买回来自带windows10,然后由于好奇心重,又给它折腾装上了ubuntu(本来是想支持国产deepin,奈何问题太多)。万恶之源开始,ubuntu很多常用软件没法直接用apt安装,安装完微信,使用微信一会儿会自动退出登录,无奈卸载。但问题是:非dpkg/apt/snap方式安装,卸载也不知道怎么卸载,于是查找 wechat关键字,找到一个 wechat.sh。
解决
查看脚本
部分help代码如下
help(){
echo "wechat [-h] [-i] [-f] [-c] [--start|start] [--remove] [--instance]"
echo " -h, --help Show help"
echo " -i, --install Install this script to system"
echo " -f, --force Force install or reinstall"
echo " -c, --clean Clean all wechat container"
echo " --start Start wechat"
echo " --update Update script"
echo " --remove Remove this script"
echo " --instance Create a instance wechat container, you can create more then one using this option"
return 0
}
执行脚本
./wechat.sh --remove
没有任何反应。。。看了下remove函数的代码,应该会把 wechat.sh文件给删除的,但是文件依然还在,可以断定执行未成功
remove(){
[ -e ~/.local/bin/wechat.sh ] && rm -f ~/.local/bin/wechat.sh\
&& echo "remove ~/.local/bin/wechat.sh"
[ -e ~/.local/bin/wechat ] && rm -f ~/.local/bin/wechat
[ -e ~/.local/share/icons/hicolor/256x256/apps/WINE_WECHAT.png ] \
&& rm -f ~/.local/share/icons/hicolor/256x256/apps/WINE_WECHAT.png\
&& echo "remove ~/.local/share/icons/hicolor/256x256/apps/WINE_WECHAT.png"
[ -e /home/$(whoami)/.local/share/applications/Wechat.desktop ] \
&& rm -f /home/$(whoami)/.local/share/applications/Wechat.desktop\
&& echo "remove ~/.local/share/applications/Wechat.desktop"
return 0
}
调试脚本
sh -x ./wechat.sh --remove
提示如图
第148行代码如下
while [[ $# > 0 ]];do
问题解决
修改执行方式
before:
$ sh wechat.sh
after:
$ bash wechat.sh
注意:
查看.sh脚本的时候一定要看第一行
wechat.sh
的第一行:
#!/usr/bin/env bash
要区分两种情况
#!/bin/bash
或者是
#!/bin/sh