我有一个tcsh脚本执行此操作:
set _iterm2_truncated_prompt=`echo "$prompt" | sed -e 's/ $//'`
但是,对于$ prompt的某些值,这会失败。这是一个极小的(尽管是愚蠢和不切实际的)例子:
set prompt='{['
set _iterm2_truncated_prompt=`echo "$prompt" | sed -e 's/ $//'`
产生错误:
Missing ].
似乎"报价"在`backticks`中被忽略。
创建一个临时文件,这似乎很难以便携和安全的方式进行,这在tcsh中甚至可以做到吗?我希望它适用于$prompt
的任何可能值。
我知道最好避免使用csh / tcsh脚本。由于我的一些用户确实使用了tcsh,因此这是一个必要的恶。最终这个脚本必须修改shell的$prompt
变量,所以一些tcsh脚本确实是不可避免的。
答案 0 :(得分:1)
以下命令:
set noglob
将关闭多种替代 - 至少足以满足我在正常使用中期望看到的内容。然后
unset noglob
之后。