【发布时间】:2012-09-27 02:40:23
【问题描述】:
umask 设置为 022,创建文件权限为 -rw- r-- r-- 即 644。 我用这种方式制作了一个文件
echo date > date.sh
./date.sh
运行代码后我会得到错误权限被拒绝但如果我使用 sh 命令调用文件
sh date.sh
它有效。
我最近开始练习 UNIX,想知道为什么会这样。
【问题讨论】:
-
没有为任何用户设置
-x可执行位,这就是为什么你不能这样称呼它./date.sh。如果没有 shebang 行,Unix 将不知道它是什么类型的可执行文件,即#!/bin/sh。 -
@squiguy:虽然 shebang 绝对是个好习惯,但实际上并不是必须运行 shell 脚本。
-
@David 我想我只是习惯了 Perl!但是,是的,你是对的。