linux中符号链接啥意思,linux – 为什么我不能在符号链接中使用“...

我有以下目录结构:

misha@misha-lmd:~/tmp$ls -l

total 4.0K

-rw-r--r-- 1 misha lmd 21 Feb 18 21:00 hello.py

lrwxrwxrwx 1 misha lmd 20 Feb 18 21:01 symlink -> /home/misha/nobackup/

接下来,我尝试以下方法:

misha@misha-lmd:~/tmp$cd symlink

misha@misha-lmd:~/tmp/symlink$cat ../hello.py

cat: ../hello.py: No such file or directory

为什么这不起作用?

如果我这样做:

misha@misha-lmd:~/tmp/symlink$cd ..

misha@misha-lmd:~/tmp$cat hello.py

print "Hello World!"

一切都很好. cd处理..正确,但猫没有.什么是这种巫术,我如何按照我希望的方式让事情发挥作用?

编辑

好的,多亏了这里的一些答案,我已经发现了更多关于发生了什么的事情.首先,cd实际上不是可执行文件,它是shell的内置命令(在本例中为bash):

misha@misha-lmd:~/tmp$type cd

cd is a shell builtin

如果你是bash,你可以找到bash用于管理的环境变量,包括移动目录.还有其他内置函数,如pwd,具有实际可执行文件的对应项:

misha@misha-lmd:~/tmp/symlink$type pwd

pwd is a shell builtin

misha@misha-lmd:~/tmp/symlink$/bin/pwd

/home/misha/nobackup

misha@misha-lmd:~/tmp/symlink$/bin/pwd -L

/home/misha/tmp/symlink

/ bin / pwd可执行文件默认打印物理路径,但也可以打印给定`-L’开关的逻辑路径.同样,当我尝试做:

misha@misha-lmd:~/tmp/symlink$cat ../hello.py

cat: ../hello.py: No such file or directory

事情正在失败,因为..被解释为物理父目录,而不是逻辑目录.这允许我将我的问题细化为:

当我为可执行文件指定命令行参数时,我怎么能得到…表示逻辑父,而不是物理父?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值