文件存在但无法通过脚本访问

文件存在但无法通过脚本访问

/var/log/apache2/error_log当我尝试显示Bash 脚本的内容时收到以下错误:

more: stat of /var/log/apache2/error_log failed: No such file or directory

more但是,我可以在命令行上运行该命令,并且它运行良好(有时 - 请参见下文)。

我已经检查过 bash 脚本中的文件名是否正确(实际上我剪切并粘贴了它以确保这一点)。

Bash 脚本非常简单:

#!/bin/bash
more /var/log/apache2/error_log

我也尝试过:

#!/bin/bash

sudo more /var/log/apache2/error_log

但我仍然收到同样的错误。

在命令行上,它仅在使用文件名自动完成时才有效。当我完整输入命令和文件名时,它找不到该文件。但是,当我输入、more /var/log/a按下Tab和自动完成时(甚至只是),它就可以正常工作。似乎只有在自动完成文件名时才会起作用。因此,它似乎本身并不是权限错误。apache2error_logerror_log

任何关于为什么会发生这种情况的见解都非常感谢。

答案1

文件名更改为error.log,而不是用户创建的error_log。

相关内容