1

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."

でも、echo $kkは大丈夫ですよ~

"/u/myid"
4

1 に答える 1

1

cwdcmd問題は、エイリアスを定義したことです。tcsh マニュアルページに関しては、cwdcmd

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

つまり: 実行するcdと、定義されechoたコマンドも実行され、出力が$kk変数に保存されます。

これを回避するには、cwdcmdエイリアスを削除します。

unalias cwdcmd

xtermただし、これには、目的の機能 (おそらくタイトルの設定) が機能しなくなるという副作用があることに注意してください。

于 2012-04-18T10:24:41.027 に答える