问题解决

screenfetch这个是一个显示硬件配置的一个算是一个工具或者说是一个脚本的

作者发布的开源地址https://github.com/KittyKatt/screenFetch

我运行这个命令的时候他一直卡在这个地方等几分钟才运行

image-20210901111811515

重新安装不行,还是老样子

我只能从根部找问题肯定先找到他的启动路径用find / -name "*screenfetch*"全盘搜索他的文件

image-20210901112558281

查看他的源代码,发现他是文件内容,他有60000多行代码我要是一个一个分析那不累死

image-20210901112628954

能看出来他是shell代码

可以用-x来调试看看

1
bash -x /usr/bin/screenfetch 

发现他卡在

image-20210904150149693

Snap是一个仓库

我单独拿出来运行一下

snap list 命令查询已经安装了的软件

1
snap list

他果然卡这个地方那,那应该就是这个问题导致的加载不出

image-20210904150325265

等了一会他报这个错误

image-20210904150531235

然后我百度了一下,可以看见他说重启一下snap服务就可以了

1
systemctl restart snapd.service

image-20210904150611257

启动是没有卡,但是发现他有一个报错,说是在/usr/bin/screenfetch里面的1851

image-20210904183005562

他说是在下面这个文件的地方

image-20210904183140883

百度根本不行,我决定自己分析一下

free命令是查看内存的详细用的,没有看见下面这个的确是没有内存信息显示的

image-20210904184517748

image-20210904184605813

awk是分享处理过滤结果用的,:是指定切分的地方,NR=2是在第二行,输出第二个

我发现这个命令没有毛病啊怎么会错那,怎么会不显示那

image-20210904184824100

我发现这个和上面这个:有不同一个是中文一个是英文

image-20210904185009345

我把他改成中文的

image-20210904185126971

问题完美解决

image-20210904185247670