不适用于tcsh:set kk =`cd $ THE_PATH; pwd`

时间:2012-04-17 02:50:37

标签: bash csh tcsh

获得BASH绝对路径的典型方法是:

`cd $THE_PATH; pwd`

但是这对tcsh / csh不起作用。如果在tcsh,你

set kk=`cd $HOME; pwd`

kk将保持绝对路径的正确值,但是,非常奇怪,“ls $ kk”会给你错误,它表示路径不存在〜!!

任何人都可以告诉我为什么会这样吗?感谢。

[编辑]

set kk=`cd $HOME; pwd`
cd $kk

会给出这个:

"^[]2;myid@machine003:/u/myid^G: No such file or directory."

但回声$ kk很好〜

"/u/myid"

1 个答案:

答案 0 :(得分:1)

问题是您定义了cwdcmd别名。关于tcsh man page cwdcmd

... Runs after every change of working directory. ...

I.e。:执行cd时,也会执行定义的echo命令,并将输出保存到$kk变量中。

为避免这种情况,您可以删除cwdcmd别名:

unalias cwdcmd

但请注意,这会产生副作用,即所需的功能(可能设置xterm标题)不再起作用。