我不知道“ ${ (%):-%n} ”是什么意思。
${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh
Run Code Online (Sandbox Code Playgroud)
的输出echo ${(%):-%n}是我的用户名。
的(%)是一个参数扩展标志,特别是使在参数的值提示转义序列来扩展所述一个。例如,
% x="%n"
% echo $x
%n
% echo ${(%)x}
pi
Run Code Online (Sandbox Code Playgroud)
:-没有参数名称的运算符会导致以下文本被视为扩展的值:
% echo ${:-%n}
%n
Run Code Online (Sandbox Code Playgroud)
把它们放在一起,你会得到一个扩展到你当前用户名的表达式。字符串%n是参数扩展的结果,它也经历了快速扩展。
% echo ${(%):-%n}
pi
Run Code Online (Sandbox Code Playgroud)