只是一个简单的问题。
为什么这个 bash 命令在 Ubuntu 服务器上可以正常工作并找出 ISBN 代码,但在我的 Ubuntu 桌面上却不起作用?两个系统都是 22.04 LTS。
echo "ISBN 5-02-013850-9" | awk '/ISBN [0-9]{1}-[0-9]{2}-[0-9]{6}-[Xx0-9]{1}/ {print $0}'
Run Code Online (Sandbox Code Playgroud)
提前致谢。
tl;dr:在 Ubuntu 20.04 中,诸如 /bin 和 /sbin 之类的文件夹现在是 /usr 中相同文件夹的符号链接。为什么要进行此更改,发行说明中不应该提及它吗?
这花了几天时间,但我找到了系统设置中遇到的一些问题。作为预置安装后命令集的一部分,我将 .tar.gz 解压到新系统上,这会将一些文件放在各种文件夹中,包括 .tar.gz 和 .tar.gz /bin。我从 Ubuntu 14.04 开始就一直在这样做。使用 Ubuntu 20.04,我的系统在安装后无法启动(各种安装失败错误)。
我最终将问题缩小到这个解包步骤,并意识到我正在替换 /bin 文件夹并使许多东西无法访问。多么可爱的惊喜。修复很容易;将文件转储到 /usr/bin 中。
具体来说,以下符号链接显然是 20.04 中的新符号(以下通过多次全新安装):
$ lsb_release -ds
Ubuntu 20.04 LTS
$ ls -l / | grep -E "usr|bin|lib"
lrwxrwxrwx 1 root root 7 Apr 23 15:02 bin -> usr/bin/
lrwxrwxrwx 1 root root 7 Apr 23 15:02 lib -> usr/lib/
lrwxrwxrwx 1 root root 8 Apr 23 15:02 sbin -> usr/sbin/
drwxr-xr-x 11 …Run Code Online (Sandbox Code Playgroud) 我无权访问 Ubuntu 系统或 chroot。我希望有人能告诉我Ubuntu wiki的说法是否准确:
对于 Quantal,应该支持合并的 /usr。在新系统上,安装程序应在 /usr 中创建 {/bin、/lib、/sbin} 符号链接。