更改 zsh 进程替换 '=()' 的位置

tim*_*tim 5 zsh process-substitution

zsh显然/tmp/zshXXXXXX用于存储由使用=(). 例如,

$ echo =(echo test)
/tmp/zsh4RmpQZ
Run Code Online (Sandbox Code Playgroud)

但是,我想更改位置以/run使用我的tmpfs坐骑。

是否有配置选项zsh可以使用=()?更改进程替换中临时文件的(默认)位置?

Kus*_*nda 5

shell在创建临时文件时zsh使用该变量。TMPPREFIX

根据手册:

TMPPREFIX

shell 将用于所有临时文件的路径名前缀。请注意,这应包括文件名的初始部分以及任何目录名称。默认为 /tmp/zsh.

测试:

% TMPPREFIX=$HOME/hello
% echo =(echo test)
/home/myself/hellotwu65k
Run Code Online (Sandbox Code Playgroud)