面试题答案
一键面试确保脚本执行时拥有恰当权限的方法
- 文件权限设置:
- 在创建脚本文件时,使用
chmod
命令设置合适的权限。一般对于脚本文件,推荐的权限是755
,即文件所有者有读、写、执行权限,同组用户和其他用户只有读和执行权限。例如,假设脚本文件名为test.sh
,可以使用以下命令设置权限:
chmod 755 test.sh
- 对于脚本中涉及的其他文件和目录,根据需要设置权限。比如,如果脚本需要读取一个配置文件
config.txt
,可以设置config.txt
的权限为644
,即文件所有者有读、写权限,同组用户和其他用户只有读权限:
chmod 644 config.txt
- 在创建脚本文件时,使用
- 使用umask:
umask
用于设置在创建新文件或目录时的默认权限掩码。新文件或目录的实际权限是通过从默认权限(文件默认666
,目录默认777
)中减去umask
值得到的。- 在脚本中,可以在开头设置
umask
。例如,设置umask
为022
,这样创建的文件默认权限为644
(666 - 022 = 644
),创建的目录默认权限为755
(777 - 022 = 755
)。示例脚本如下:
#!/bin/bash umask 022 touch new_file.txt mkdir new_directory
- 这样,
new_file.txt
会具有644
的权限,new_directory
会具有755
的权限,避免了权限过度开放的风险。同时,脚本本身也应设置合适的执行权限,如上述设置为755
。