作者tutu (丁小雨)
看板Linux
标题[问题] shell script执行方式
时间Fri Oct 5 16:04:04 2018
我写了一只简单的shell script程式 test1.sh
在执行时,不论是 $sh test.sh 或 $./ test1.sh
都可正常执行
但是我看到有人是只打了test1.sh 就可以执行
爬文後判断是与PATH的当前路径有关
尝试将档案放到bin底下,再下指令test1.sh 也一样无法执行
不知道有人知道如何改才能只打test1.sh就可以执行吗
非常感谢
https://imgur.com/P80H1yp.jpg
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.110.200.35
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Linux/M.1538726646.A.A23.html
1F:→ kenduest: 至少先 echo $PATH 看一下会找哪些路径目录 10/05 16:17
2F:→ kenduest: 你文章内说的 bin 内,这个完整位置可以再确认一次 10/05 16:18
谢谢kenduest,目前已解决
要可直接执行test1.sh 除了
1、档案必须要具备可读与可执行 (rx) 的权限, 这里可透过chmod更改权限
2、echo $PATH可查看路径 像我就是出现/home/guest/bin
所以我将test1.sh移到 bin目录底下 就可以直接以test1.sh执行
先前无法执行原来是因为我底下的/bin并非是目录而是档案(可能是我mv档案时的失误)
才造成如此
※ 编辑: tutu (140.110.200.35), 10/05/2018 16:32:12
3F:推 da21510: chmod +x 10/05 18:03
4F:→ da21510: 我看错问题0.0 10/05 18:04
5F:推 alan23273850: 纠结这个问题满无聊的,不久有没有./的差别 10/06 09:26
6F:推 ucool522: ... 10/06 12:05
7F:推 holishing: 不过感觉弄清楚这基本的东西, 之後设定其他东西浪费的 10/06 19:05
8F:→ holishing: 的时间或许就会少一点了...吧? 10/06 19:05
9F:→ rickieyang: 个人是觉得除非很清楚 script 写了啥, 要不然放到 10/06 23:59
10F:→ rickieyang: PATH 里还满危险的啦, 尤其是把丢 script 的路径直接 10/07 00:00
11F:→ rickieyang: 加进去 PATH... 10/07 00:00
12F:推 cphe: 鸟哥网站基本观念可以先看一下 10/07 16:32