在配置文件中使用 resolv.conf 的值

在配置文件中使用 resolv.conf 的值

适用于 Linux 的 Windows 子系统(WSL2)每次重启时都会生成新resolv.conf文件,内容如下

nameserver 123.45.67.8

~/.bashrc文件中,我使用如下所示的值,这样即使名称服务器发生更改(每次重启后)一切正常

export hostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')
export http_proxy="http://${hostip}:3128"
export HTTP_PROXY="http://${hostip}:3128"
export https_proxy="http://${hostip}:3128"
export HTTPS_PROXY="http://${hostip}:3128"
export no_proxy="${hostip},127.0.0.1,::1,${hostip}*"
export NO_PROXY="${hostip},127.0.0.1,::1,${hostip}*"

这也很好用。但是,我正在创建一个新的配置文件apt(用于使用 apt-install 、 apt-get update 等)。此文件名和位置是/etc/apt/apt.conf.d/01-proxyenv

在此文件中我有下面的代码。

export hostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')
Acquire::http::proxy "http://${hostip}:3128";
Acquire::HTTP::PROXY "http://${hostip}:3128";
Acquire::HTTPS::PROXY "http://${hostip}:3128";
Acquire::https::proxy "http://${hostip}:3128";

这不起作用。我收到语法错误E: Syntax error /etc/apt/apt.conf.d/01-proxyenv:1: Extra junk after value。此错误与第 1 行有关。我该如何修复此问题?

相关内容