如何“sudo cat”符号链接的内容

如何“sudo cat”符号链接的内容

我使用以下命令创建了foo该文件的符号链接/bar/baz

$ ln -s /bar/baz foo
$ ls
foo

/bar/baz是一个只有 root 有读取权限的日志文件。

现在我想打印/bar/baz使用符号链接的内容。但这不适用于sudo cat

$ sudo cat foo
cat: foo: No such file or directory

我想也许我需要使用“解开”符号链接readlink,但这也不起作用:

$ sudo readlink foo | cat
/bar/baz

如何cat使用符号链接获取文件的内容?

答案1

sudo cat foo是正确的。 (假设需要 root 访问权限才能读取该文件,否则cat foo可以正常工作。)

您遇到的问题是/bar/baz不存在的。

$ ls 
$ ln -s ./baz foo
$ ls
foo
$ cat foo
cat: foo: No such file or directory
$ echo "Hello!" > ./baz
$ ls
baz foo
$ cat foo
Hello!

相关内容