zsh パラメーターの置換

zsh パラメーターの置換

このページ次のデモ機能があります。

~inews> namedir () { $1=$PWD ;  : ~$1 }

しかし、私のコンピュータで試してみると、次のエラーが発生します。

namedir: no such file or directory: test=/home/user

もしかして私も同じ機能を試してみましたが活性化されませcdんでした。エラーのアイデアはありますか?$1=$PWDautocd

答え1

これがどのように機能するのかわかりません。割り当ては$左側の記号を取らないので、割り当て$1=$PWDとして認識されず、ただ2つの変数を展開し、コマンドで実行しようとします。namedir testin を使用すると拡張/home/userされ、対応するtest=/home/userエラーが発生します。

これ手動名前付きディレクトリはを使用して設定できると言われているため、次のようhash -d name=/dirに機能する必要があります。

namedir() { hash -d "$1=$PWD"; }

これ目次はじめに「この文書は texi2html 翻訳者バージョン 1.44 を使用して 1995 年 11 月 30 日に作成されました」と書かれているので、この文書が完全に最新であるか、名前付きディレクトリが過去には異なる動作をしていたか知りたいです。 (それでもページには「〜inews ...形式のディレクトリを参照するとき」と記載されていますが、これがどのように機能するのかわかりません。)

関連情報