Closed RiftRays closed 1 year ago
未复现
请手动执行:
df -h $clashdir |awk '{ for(i=1;i<=NF;i++){ if(NR==1){ arr[i]=$i; }else{ arr[i]=arr[i]" "$i; } } } END{ for(i=1;i<=NF;i++){ print arr[i]; } }' |grep Ava |awk '{print $2}'
@juewuy 执行这行命令并未得到任何结果。
@WilsonVincent df -h $clashdir呢?
@juewuy
root@vincent:~# df -h $clashdir呢?
df: 呢?: 没有那个文件或目录
root@vincent:~#
@WilsonVincent 所以为什么你安装时没写入环境变量?
@juewuy 我是使用的是指导文档中的一键安装。而且是root权限。没有修改其他的东西。这是需要写入什么权限?或者需要执行什么补全环境?
@WilsonVincent 参考https://github.com/juewuy/ShellClash/blob/master/README_CN.md 覆盖安装即可
@juewuy 我直接卸载重装都好像不行。
@WilsonVincent 不对啊,你为什么要复制“呢?”
@juewuy 大意了,不好意思。刚刚回看指令的时候发现的。 df -h $clashdir是可以获取到的。
root@vincent:~# df -h $clashdir
文件系统 大小 已用 可用 已用% 挂载点
tmpfs 375M 36M 339M 10% /run
/dev/sda2 117G 28G 83G 25% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
/dev/sda1 511M 6.1M 505M 2% /boot/efi
/dev/sdb5 458G 343G 92G 79% /mnt/Vincent
overlay 117G 28G 83G 25% /var/lib/docker/overlay2/15f107120025455f1e8aa696216f14262bcd8b291dc1b2b150f7d659ffae6658/merged
overlay 117G 28G 83G 25% /var/lib/docker/overlay2/3bce4c33a5087c8eeec507b488648e4445001a5fec844398b56860b66d0d50a7/merged
overlay 117G 28G 83G 25% /var/lib/docker/overlay2/95bfcf6ae21484fa81be65cbd9c76e3fa3840535c19c63e86a226ae6176924bc/merged
overlay 117G 28G 83G 25% /var/lib/docker/overlay2/05b0c15f12906fe22728fffdae9d5d806b9d1c884a8479efe860bb99aa970fd8/merged
overlay 117G 28G 83G 25% /var/lib/docker/overlay2/5a581b2269abbd62c4a2c3235bbdf10f95f3073c96b8297297d3552f6f96356a/merged
overlay 117G 28G 83G 25% /var/lib/docker/overlay2/5ef7020ef66e5f675056e5385466d2786b60ca19155fbdb2f70bec0981be5d3f/merged
overlay 117G 28G 83G 25% /var/lib/docker/overlay2/2c08b4490c8f60f397406c127787e3b83e09928a3d7e414ecf3ddc2b3c591bee/merged
tmpfs 375M 108K 375M 1% /run/user/1000
tmpfs 375M 60K 375M 1% /run/user/0
overlay 117G 28G 83G 25% /var/lib/docker/overlay2/83a81a4a67d30ef9cac33ad7e53f6f2c80fa0d772ba214ee29ad71bbce171dac/merged
root@vincent:~# df -h $clashdir |awk '{ for(i=1;i<=NF;i++){ if(NR==1){ arr[i]=$i; }else{ arr[i]=arr[i]" "$i; } } } END{ for(i=1;i<=NF;i++){ print arr[i]; } }' |grep Ava |awk '{print $2}'
root@vincent:~#
@WilsonVincent 说明环境变量还是没有配置成功,你可以手动添加到/etc/profile
@juewuy 将什么文件添加到/etc/profile?
@WilsonVincent 参考https://github.com/juewuy/ShellClash/blob/master/scripts/init.sh#L190-L194
@juewuy 变量应该没有问题吧。我逐步拆解得到以下输出结果:
root@vincent:~# df -h $clashdir
文件系统 大小 已用 可用 已用% 挂载点
/dev/sda2 117G 28G 83G 25% /
root@vincent:~# df -h $clashdir | awk '{ for(i=1;i<=NF;i++){ if(NR==1){ arr[i]=$i; }else{ arr[i]=arr[i]" "$i; } } } END{ for(i=1;i<=NF;i++){ print arr[i]; } }'
文件系统 /dev/sda2
大小 117G
已用 28G
可用 83G
已用% 25%
挂载点 /
root@vincent:~# df -h $clashdir | awk '/Ava/ {print $2}'
无结果
df -h $clashdir | awk '/Ava/ {print $2}'
根据输出结果对比:如果系统是英文的。。则正常。如果系统是中文的则异常。
以下是云服务器中的输出对比结果
root@X:~# df -h $clashdir | awk '/Ava/ {print $2}'
Size
root@X:~# df -h $clashdir | awk '/Available/ {print $4}'
root@X:~# df -h $clashdir | awk '{ for(i=1;i<=NF;i++){ if(NR==1){ arr[i]=$i; }else{ arr[i]=arr[i]" "$i; } } } END{ for(i=1;i<=NF;i++){ print arr[i]; } }'
Filesystem /dev/vda3
Size 40G
Used 7.5G
Avail 30G
Use% 21%
Mounted /
root@X:~# df -h $clashdir
Filesystem Size Used Avail Use% Mounted on
/dev/vda3 40G 7.5G 30G 21% /
@juewuy
root@vincent:~# df -h $clashdir | awk '/\/dev\/sda2/ {print $4}'
83G
df -h $clashdir | awk '/可用/ {print $4}'
可用
@WilsonVincent 什么神仙版本,还显示中文🙈
@juewuy 别骂了别骂了~
df -h . | awk 'NR==2 {print $4}'
可以尝试一下这个? 两个环境获取当前文件夹所在的磁盘剩余容量没有问题。
@WilsonVincent 不用怀疑,这个我用过很多设备都不行
@juewuy 那我这个问题应该如何解决呢?环境变量应该是没问题的。
@WilsonVincent 后续我会尝试修复
@juewuy 好的。谢谢。🤣特色中文版~
@juewuy g版本成功获取,谢谢大佬的技术支持。
Verify steps
安装在/etc/clash也一样。