为什么在尝试启动 tomcat 并将 std 输出到文本文件时出现“权限被拒绝”?
why do I get “permission denied” when trying to start tomcat and write std out to a text file?
我正在尝试以将标准输出写入文本文件的方式启动 tomcat。
我正在这样做,但我的权限被拒绝了。这是为什么?
[rob@machine1 bin]$ pwd
/usr/lib64/apache-tomcat-6.0.36/bin
[rob@machine1 bin]$ sudo ./startup.sh > console.log 2<&1
bash: console.log: Permission denied
重定向由当前 shell 完成,它没有 sudo 权限。当你想写入 console.log 时,你 运行 对 shell 进行 sudo,它可以反过来进行重定向:
sudo sh -c './startup.sh > console.log 2>&1'
备注:
我把2<&1
的方向改成了2>&1
.
您可能希望在自己的启动脚本中包含重定向。
我正在尝试以将标准输出写入文本文件的方式启动 tomcat。
我正在这样做,但我的权限被拒绝了。这是为什么?
[rob@machine1 bin]$ pwd
/usr/lib64/apache-tomcat-6.0.36/bin
[rob@machine1 bin]$ sudo ./startup.sh > console.log 2<&1
bash: console.log: Permission denied
重定向由当前 shell 完成,它没有 sudo 权限。当你想写入 console.log 时,你 运行 对 shell 进行 sudo,它可以反过来进行重定向:
sudo sh -c './startup.sh > console.log 2>&1'
备注:
我把2<&1
的方向改成了2>&1
.
您可能希望在自己的启动脚本中包含重定向。