我有一个 unix shell 脚本文件,它的所有者是“xyz”,运行时删除了一些特定的文件。
我想触发此脚本以删除其他目录中的文件,其中要删除的文件的所有者与脚本的所有者不同。这可能吗?这是否可以以不同的用户身份运行此脚本,以便它可以删除这些新文件?
编辑:我使用 Autosys 定期触发此脚本。
通常你会使用sudo
:
sudo -u ANOTHER_USER /path/to/the/script.sh
但是,您当前的帐户需要适当的权限才能执行此操作。您可以使用文件配置这些权限/etc/sudoers
。
您会发现大量文章如何使用sudo
. 例如:http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_: Ch09 :_Linux_Users_and_Sudo
如果您有足够的权限,您可以chmod需要先删除的文件。之后,您的脚本,无论它执行什么用户,都会成功。