小编use*_*908的帖子

Linux `uname -m` 如何获取它的信息?

Linuxuname -m从哪里获取信息?

我问是因为我有一台机器肯定是 64 位的,uname -a并且uname -r确认了这一点,但是uname -m打印i686. 这是从哪里弄来的??

linux cpu

16
推荐指数
1
解决办法
2401
查看次数

PATH 搜索是否包含符号链接?

POSIX shell 标准在这个站点上说

http://pubs.opengroup.org/onlinepubs/9699919799/

关于 shell 如何PATH用于查找可执行文件:

“应从头到尾搜索列表,将文件名应用于每个前缀,直到找到具有指定名称和适当执行权限的可执行文件。”

好吧,这不是在真正的 POSIX 实现中的工作方式:

man which 说:

“返回将在当前环境中执行的文件(或链接)的路径名,其参数在严格符合 POSIX 的 shell 中作为命令给出。它通过在 PATH 中搜索与名称匹配的可执行文件来实现参数。它不遵循符号链接。”

好,我们来看看这个情况:

$ pwd /home/mark

$ echo $PATH /home/mark/bin:...

$ ls -l bin/foobar
lrwxrwxrwx 1 mark mark 18 Dec 12 22:51 bin/foobar -> /home/mark/foobar1
$ touch foobar1
$ which foobar
$ chmod a+x foobar1
$ which foobar
/home/mark/bin/foobar
Run Code Online (Sandbox Code Playgroud)

好的,这里有一个PATH正确名称的符号链接,它被报告ls为可执行。

which 根本不看它,而只对它指向的东西感兴趣。

尽管事实上两者都man which明确表示它不遵循符号链接(实际上我们看到它没有,因为which foobar不打印foobar1),而且上面引用的 POSIX shell 文档从未提到 …

shell symbolic-link which posix

9
推荐指数
1
解决办法
1467
查看次数

如何安装 Tcl 软件包?

我正在尝试运行一个包含 的 Tcl 脚本package require cmdline,但它抱怨:

找不到包cmdline

如何找到另一个 Tcl 软件包并将其安装到现有的 Tcl 安装中?

package-management installation-package tcl

6
推荐指数
1
解决办法
2万
查看次数

为什么当 sudo 命令起作用时 strace sudo 命令炸弹?

我的用户名被允许执行

sudo 命令

那为什么这个炸弹

strace sudo 命令

有错误:

sudo: must be setuid root

sudo strace setuid

6
推荐指数
1
解决办法
3668
查看次数