我们是否需要先 chmod 一个 shell 脚本才能进行 rsh

我们是否需要先 chmod 一个 shell 脚本才能进行 rsh

我尝试将 shell 脚本从 OpenVms rsh 到 Red Hat linux。好像没有执行。

我在 OpenVms 中创建了 shell 脚本,并将其通过 Ftp 传输到 Linux。然后我 ls -la linux 中的文件夹:

-rw-r--r--    1 buedev   buedev        382 Jul 20 11:03 files.sh

看来连业主都没有执行权。如果我们需要 chmod 它,我们如何在 OpenVms 中远程执行它?

答案1

为了执行,必须设置执行位。如果文件未标记为可执行文件,即使文件的所有者也无法要求系统执行它。

这里需要注意的是,对于大多数 shell 脚本,您可以通过自己调用 shell 并将脚本数据作为参数提供给它来执行它们。

/bin/sh /path/to/files.sh

这将执行shshell 并向其发送要执行的脚本的文本数据。这只需要文件的读取权限,因为 shell 正在执行,它只需要读取脚本而不执行它。

您可以通过在 ftp 首选项中设置 umask 来更改将要写入的文件的权限,或者稍后使用 shell chmod。一些 ftp 守护程序还支持更改现有文件的权限。

相关内容