请教两种路径表示方法的区别?详情见内容

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
头像
九天星
帖子: 1441
注册时间: 2007-07-14 20:45

请教两种路径表示方法的区别?详情见内容

#1

帖子 九天星 » 2016-07-27 11:05

代码: 全选

./w3af_console
. /tmp/w3af_dependency_install.sh
上面两段代码,请注意./ 和. /的区别是什么? (说明:点右斜线和点空格右斜线的区别是什么)
头像
astolia
论坛版主
帖子: 6703
注册时间: 2008-09-18 13:11

Re: 请教两种路径表示方法的区别?详情见内容

#2

帖子 astolia » 2016-07-27 11:35

代码: 全选

man -P cat bash | grep -A 15 '\.  filename'
科学之子
帖子: 2284
注册时间: 2013-05-26 6:58
系统: Debian 9

Re: 请教两种路径表示方法的区别?详情见内容

#3

帖子 科学之子 » 2016-07-28 13:16

2楼已经说明问题了
为了进一步减轻楼主负担我就再描述一下(貌似曾经了解过楼主的问题,所以2楼给的文档没仔细看,但粗略查看好像和我的意思一样)
如果'.'后面有空格,这时'.'是"source"命令的简写,即'.'本身是一个命令
https://www.baidu.com/s?wd=source+%E5%9 ... inputT=921
终端输入"help ."和"help source",我这里的描述部分是相同的
头像
九天星
帖子: 1441
注册时间: 2007-07-14 20:45

Re: 请教两种路径表示方法的区别?详情见内容

#4

帖子 九天星 » 2016-09-02 11:32

科学之子 写了:2楼已经说明问题了
为了进一步减轻楼主负担我就再描述一下(貌似曾经了解过楼主的问题,所以2楼给的文档没仔细看,但粗略查看好像和我的意思一样)
如果'.'后面有空格,这时'.'是"source"命令的简写,即'.'本身是一个命令
https://www.baidu.com/s?wd=source+%E5%9 ... inputT=921
终端输入"help ."和"help source",我这里的描述部分是相同的

我个人觉得你可能理解有误,你要注意到一点,那就是我的问题中不只是有点,还有右斜线,我觉得可能是相对路径和绝对路径的表示方法。


./是指当前目录 . /是指从根目录开始。 我不确定我的这个想法是否正确。
上次由 九天星 在 2016-09-02 11:35,总共编辑 1 次。
头像
qy117121
论坛版主
帖子: 50587
注册时间: 2007-12-14 13:40
系统: Winbuntu
来自: 志虚国乌由市
联系:

Re: 请教两种路径表示方法的区别?详情见内容

#5

帖子 qy117121 » 2016-09-02 11:33

你不加

代码: 全选

 .  用/tmp/w3af_dependency_install.sh也是绝对路径
空格后面有/的就是绝对路径了
渠月 · QY   
本人只会灌水,不负责回答问题
无聊可以点一下→ http://u.nu/ubuntu

邮箱 chuan@ubuntu.org.cn
头像
vickycq
帖子: 4507
注册时间: 2011-03-20 13:12
系统: Debian
来自: 山东省寿光县
联系:

Re: 请教两种路径表示方法的区别?详情见内容

#6

帖子 vickycq » 2016-09-02 11:50

九天星 写了:./w3af_console
. /tmp/w3af_dependency_install.sh
./w3af_console 表示当前目录 (./) 下的文件 w3af_console,实际效果为新开一个 shell 执行 ./w3af_console
. /tmp/w3af_dependency_install.sh 等同于 source /tmp/w3af_dependency_install.sh,实际效果为在当前 shell 中执行 /tmp/w3af_dependency_install.sh
九天星 写了:请注意./ 和. /的区别是什么? (说明:点右斜线和点空格右斜线的区别是什么)
“点空格右斜线”表述有误,应为“点空格”
./foo 表示当前目录中的文件 foo,实际效果为尝试新开一个 shell 执行 ./ 中的文件 foo
. /foo 等同于 source /foo,实际效果为尝试在当前 shell 中执行 / 中的文件 foo

参考
http://ss64.com/bash/source.html
http://unix.stackexchange.com/questions ... d-in-shell
http://stackoverflow.com/questions/2009 ... difference
Debian 中文论坛 - forums.debiancn.org
欢迎所有 Debian GNU/Linux 用户
科学之子
帖子: 2284
注册时间: 2013-05-26 6:58
系统: Debian 9

Re: 请教两种路径表示方法的区别?详情见内容

#7

帖子 科学之子 » 2016-09-02 22:33

九天星 写了:
科学之子 写了:2楼已经说明问题了
为了进一步减轻楼主负担我就再描述一下(貌似曾经了解过楼主的问题,所以2楼给的文档没仔细看,但粗略查看好像和我的意思一样)
如果'.'后面有空格,这时'.'是"source"命令的简写,即'.'本身是一个命令
https://www.baidu.com/s?wd=source+%E5%9 ... inputT=921
终端输入"help ."和"help source",我这里的描述部分是相同的

我个人觉得你可能理解有误,你要注意到一点,那就是我的问题中不只是有点,还有右斜线,我觉得可能是相对路径和绝对路径的表示方法。


./是指当前目录 . /是指从根目录开始。 我不确定我的这个想法是否正确。
. /tmp/w3af_dependency_install.sh
这个带有空格的就不是"路径表示方法"了,而是一条命令
.是source命令的别名
不带空格.和路径是在一起,表示相对路径
回复