如何更改“uname -m”的输出

如何更改“uname -m”的输出

我正在尝试执行这个 shell 脚本 -https://raw.githubusercontent.com/oneindex/script/master/gclone.sh

这个 shell 脚本检查uname -m输出,但不喜欢它(即 aarch64 )。

xd003@localhost:~$ uname -m
aarch64
xd003@localhost:~$

我想将uname -m输出更改aarch64为 ,arm64以便它绕过 shell 脚本中的此检查并正确执行。

答案1

由于它恰好是一个bash脚本(尽管有.sh扩展名),因此您始终可以执行以下操作(在 内bash):

uname()
  if [ "$#" -eq 1 ] && [ "$1" = -m ]; then
    echo arm64
  else
    command uname "$@"
  fi

export -f uname

gclone.sh

也就是说,替换uname为导出函数,该函数在传递-m参数时输出您想要的内容。

相关内容