pkexec with >> 将输出定向到文件

pkexec with >> 将输出定向到文件

如果我尝试

pkexec echo -e '\nwl2k something\n' >> /etc/ax25/axports 

在终端中让用户向文件添加一行,我得到一个

bash: /etc/ax25/axports: 权限被拒绝

我该如何使整个命令转到 pkexec - 也就是说,要求用户 sudo 进行更改?

答案1

pkexec echo -e '\nwl2k something\n' >> /etc/ax25/axports
bash: /etc/ax25/axports: Permission denied

输出重定向具有调用 shell 的用户的权限,而不是生成输出的命令的权限。看https://unix.stackexchange.com/a/6714/411962

相反,通过管道echo将输出pkexec tee -a file附加到需要提升权限的文件中:echo -e '\nwl2k something\n' | pkexec tee -a /etc/ax25/axports

相关内容