nmcli:如何获取“上次使用”的连接

L. *_*mes 2 command-line network-manager

我正在尝试为远程系统配置自动 wifi 连接脚本。您可以使用以下命令连接到保存的连接:

$ sudo nmcli c up "connection name"
Run Code Online (Sandbox Code Playgroud)

在某些情况下,可用网络可能会发生变化……或者密码等其他详细信息可能会发生变化。如果发生这种情况,有权访问计算机的人将手动与可用的 wifi 网络建立新连接。

现在我需要让我的脚本Last Used在系统重新启动时选择从最近 ( )开始的配置文件。

此命令显示可用的连接:

$ nmcli connection show
Run Code Online (Sandbox Code Playgroud)

现在我正在寻找一种按Last Used顺序对输出进行排序的方法。

您可以使用 GUI 界面查看此信息: 网络连接

ste*_*ver 5

con对象同时具有TIMESTAMP(自纪元以来的秒数)和TIMESTAMP-REAL字段;可能前者最容易使用。例如,您可以输出NAMETIMESTAMPsorttail结果。在简洁模式下,字段默认以冒号分隔,因此您需要相应地设置sort的字段分隔符,例如

nmcli -t -f NAME,TIMESTAMP con list | sort -t: -nk2 | tail -n1
Run Code Online (Sandbox Code Playgroud)

如果你只想要连接的名称,或者cut或者awk使用相同的分隔它

nmcli -t -f NAME,TIMESTAMP con list | sort -t: -nk2 | tail -n1 | cut -d: -f1
Run Code Online (Sandbox Code Playgroud)

或者

nmcli -t -f NAME,TIMESTAMP con list | sort -t: -nk2 | tail -n1 | awk -F: '{print $1}'
Run Code Online (Sandbox Code Playgroud)