shell脚本简单问题

FrankJT 2020-02-09 10:42:13
1.为什么运行shell脚本都要“./”,我知道不加运行不了,可这个代表什么?
2.用chmod赋予权限时候,不见“./”也可以,我试过了,可教学文件都加了“./”,为什么呢?
3.能不能再运行脚本前 不用chmod +x,而是在脚本里面设定好权限呢?如果可以,该怎么设定呢?我觉得应该可以把,因为我之前运行过一个下载的工程文件中的shell脚本,就没有先chmod +x

求教

...全文
240 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Harvey_D 2020-02-15
  • 打赏
  • 举报
回复
楼主应该复习一下Linux是怎样执行程序的,特别是PATH变量了解一下; man 一下chmod的用法吧,没什么好说的
WYQXLGLM 2020-02-14
  • 打赏
  • 举报
回复
引用 1 楼 tjw316248269 的回复:
为什么运行 chmod 777 test.sh 和 chmod -rwxrwxrwx test.sh 结果不一样啊,运行第二种方式,这个test.sh权限完全没任何变化。 当我运行chmod 777 test.sh 后再运行chmod -rwxrwxrwx (./)test.sh,就会提示说“chmod: ./test.sh: new permissions are -------w-, not ---------” 这是怎么回事啊,777不就是rwxrwxrwx 第一个“-”代表是文件?
我的天呀!你完全没有了解这个命令的使用方法。告诉你可能你也理解不了。
WYQXLGLM 2020-02-14
  • 打赏
  • 举报
回复
./脚本名。 表示当前目录下的文件。 这个不是很基础吗? 脚本里面是无法直接给自己设置权限的。但是可以使用解释器➕脚本路径。 或者source命令➕脚本路径的方式。
ShangCode 2020-02-14
  • 打赏
  • 举报
回复
bash:执行的脚本可以没有x权限,./表示当前目录,并且需要文件有x权限才能执行
FrankJT 2020-02-09
  • 打赏
  • 举报
回复
为什么运行 chmod 777 test.sh 和 chmod -rwxrwxrwx test.sh 结果不一样啊,运行第二种方式,这个test.sh权限完全没任何变化。 当我运行chmod 777 test.sh 后再运行chmod -rwxrwxrwx (./)test.sh,就会提示说“chmod: ./test.sh: new permissions are -------w-, not ---------” 这是怎么回事啊,777不就是rwxrwxrwx 第一个“-”代表是文件?
fanfan_y 2020-02-09
  • 打赏
  • 举报
回复
引用 1 楼 tjw316248269的回复:
为什么运行 chmod 777 test.sh 和 chmod -rwxrwxrwx test.sh 结果不一样啊,运行第二种方式,这个test.sh权限完全没任何变化。 当我运行chmod 777 test.sh 后再运行chmod -rwxrwxrwx (./)test.sh,就会提示说“chmod: ./test.sh: new permissions are -------w-, not ---------” 这是怎么回事啊,777不就是rwxrwxrwx 第一个“-”代表是文件?
-rwx代表减去这个文件的读写执行权限,你那么写不对,+rwx = 777权限
fanfan_y 2020-02-09
  • 打赏
  • 举报
回复
引用 楼主 tjw316248269的回复:
1.为什么运行shell脚本都要“./”,我知道不加运行不了,可这个代表什么?
2.用chmod赋予权限时候,不见“./”也可以,我试过了,可教学文件都加了“./”,为什么呢?
3.能不能再运行脚本前 不用chmod +x,而是在脚本里面设定好权限呢?如果可以,该怎么设定呢?我觉得应该可以把,因为我之前运行过一个下载的工程文件中的shell脚本,就没有先chmod +x

求教
如果我没记错的话 bash 文件名.sh就可以运行shell脚本 ./应该算脚本的执行快捷方式,用bash 文件名.sh可能不用+x权限,你可以试试,我身边没电脑

2,163

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 UNIX文化
社区管理员
  • UNIX文化社区
  • 文天大人
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧