如何保存输出到需要 root 访问权限的文件

如何保存输出到需要 root 访问权限的文件

我想将命令的输出保存到当前用户无权访问的文件中。但我的用户可以使用 sudo 获得 root 访问权限。例如,我正在运行:

sudo crontab -l > /var/BackUp/crontab
-bash: sudo: Permission denied

但是我可以运行,sudo crontab -l 所以我认为 sudo 仅与 crontab 命令相关,并且由于用户无权访问/var/BackUp/crontab它,因此会出现这样的错误。

是否可以将输出写入需要当前用户以 root 权限访问的文件?

答案1

重定向不是sudo命令的一部分。根据操作,您可以执行以下操作:

sudo bash -c 'crontab -l >/var/backup/crontab'

或者如果命令不需要sudo

crontab -l | sudo tee /var/backup/crontab

答案2

测试一下:

sudo -i
crontab -l > /var/BackUp/crontab

相关内容