比如 cd usr/ 和 cd ./usr/
或者 bash myScript 和 ./myScript
比如 cd usr/ 和 cd ./usr/
或者 bash myScript 和 ./myScript
|
lxk11153Dec 10, 2019
1
有时写,有时不写,(我也不知道有木有区别
感觉这个和一些编程语言写不写语句末尾;有得一比 (我是写的,因为刚接触时就写了,养成习惯了不写看着不完成) |
|
yeyu123Dec 10, 2019
2
没这习惯
当前目录不会写 |
|
murphyyyyDec 10, 2019
3
是的.习惯...
因为 windows 上的历史遗留问题....执行 exe 时必须输入./xxx |
|
garlicsDec 10, 2019
4
只有执行 shell 的时候会写
|
|
5
rm -rf *
rm -rf ./* |
|
6
非必要的时候还习惯打./ 的同学。。。
你们不怕.忘记打或者.和 /之间多敲了个空格吗?/狗头 |
|
KyonLiDec 10, 2019 via iPhone
10
@whywhywhy #7 Windows 不是优先执行当前目录下的 exe 吗,当初刚学 Linux 还适应了好长时间./xxx 执行
|
|
k9982874Dec 10, 2019 via iPhone
12
必须写,吃过 rm -rf 的亏
|
|
wangkun025Dec 10, 2019
13
新手表示,不输入.
|
|
rzti483NAJ66l669Dec 10, 2019 via iPhone
15
@love 恶意程序也可以命名为 ls
|
|
OktfolioDec 10, 2019
18
我反正是必须写
|
|
OktfolioDec 10, 2019
19
但是 cd 后面不写
|
|
ajax10086Dec 10, 2019 via iPhone
21
第一个不写,第二个写
|
|
skinnyDec 10, 2019
22
如果有通配符(没有通配符的也要按 tab 补全)必须写,这是有过教训的人才能理解的
|
|
shawnLuoDec 10, 2019
23
跑脚本的时候才会写,其他都是直接路径名
|
|
manwei6341Dec 10, 2019
25
写
|
|
murphyyyyDec 10, 2019
27
|
|
liuzhiyongDec 10, 2019
30
第一种情况,cd 不会写“./”;第二种情况,执行脚本会写“./”。
|
|
lihongjie0209Dec 10, 2019
31
可执行文件不在 PATH 变量中才需要这种写法, 而且是 Linux bash 才有的情况, 在 Windows CMD 下直接使用 xxx.exe 也可以直接运行。
所以写不写看你用什么 shell, 都是历史遗留问题然后变为习惯了 |
|
yan5990853Dec 10, 2019
32
区别还是有的 不带./会查环境变量,可能有时候不是你想要的结果。
|
|
crellaDec 10, 2019 via Android
33
@lihongjie0209 powershell 要指定.\local_app.exe ,不指定的话会报错并提示本目录有 local_app.exe
|
|
SainnheparkDec 10, 2019 via Android
35
除了 cd 以外的命令都要加
|
|
icbmicbmDec 11, 2019 via iPhone
36
曾经是这样 直到有一次删东西打掉了一个“.” ... 不巧的是这个文件夹的命名还很离谱,然后当然是重装了
|
|
ys0290Dec 11, 2019 via iPhone
38
鸟哥私房菜好像说执行命令的顺序是当前目录,环境变量定义,PATH
|
|
sleepmDec 11, 2019 via Android
39
这不是习惯好吧。。
一个点代表当前目录 两个点代表上一级目录 |
|
msg7086Dec 11, 2019
40
|
|
AntonChenDec 11, 2019 via Android
41
自从执行 rm -rf ./* 巧漏 . 之后我就再也不用 ./ 了
|
|
Davic1Dec 11, 2019
42
# 同意 39 楼
加点号敲起命令来逻辑上更顺畅一些。。。cd ./usr/(进入当前目录下的 /usr/文件夹中) |
|
chesterzzyDec 11, 2019
43
两种情况都写。因为不产生歧义。
或者可以简单地理解为,强迫症- - |
|
sleepmDec 11, 2019 via Android
44
又仔细读了下帖子。。
输路径,传参数的话,比如 cd,只要传的对就行,不会多此一举加./ 或者输命令,bash xxx 和./xxx 是有区别的 如果 xxx 头部有注释使用啥执行,那你用 bash xxx 可能就报错 比如 #!/usr/bin/env php <?php phpinfo(); 那再讲下 env 它是从 path 中找 php,如果你指定 /bin/php,在你的系统可能没问题,但是到别的系统上估计就找不到这个文件,所以 env 使脚本兼容性更好 或者再说 不加./执行当前目录下的文件,如果这个文件和 path 中的某个命令同名,那就会执行 path 中的那个,因为它会先从 path 中找那个命令 |
|
JimmyTinsleyDec 11, 2019
46
除了 cd 之外都会加以保安全
|
|
gpra8764Dec 11, 2019
47
@flyingghost 不太会啦,键盘上./就是在一起的,这也能加一个空格那真的狗头了
|