我读到 syslog 被放置在 /var/log 目录中。但尽管 PATH 中包含目录,但我无法打开它。
lm@debian:~$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/lm/.local/bin
lm@debian:~$ export PATH=$PATH:/var/log
lm@debian:~$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/lm/.local/bin:/var/log
lm@debian:~$ sudo tail -f syslog
tail: cannot open 'syslog' for reading: No such file or directory
tail: no files remaining
如何解决这个问题?上面的目录默认不包含在 PATH 中,这对吗?
我的系统是 Debian 12“书虫”
答案1
该PATH
变量仅在 shell 无法将命令识别为别名、shell 函数或内置命令(稍微简化)时用于定位可执行文件。 shell 不会使用它或tail
查找任意文件。
如果您知道您感兴趣的文件被调用syslog
并且它位于/var/log
目录中,则可以tail -f
直接使用 on /var/log/syslog
:
tail -f /var/log/syslog
...或者首先将您的工作目录更改为/var/log
然后查看syslog
:
cd /var/log
tail -f syslog
如果更改工作目录,则可以在使用完毕后切换回最近的工作目录
cd -
...或到您的主目录
cd