我写了一个名为I wrote the regex for it .*[^a-z]'[^a-z].* But I am not getting the desired output in my java code.
String s = "don't try to ''''remove apostr inside'''' word'";
s = s.replace(".*[^a-z]'[^a-z].*", " ");
的函数,我试图将其合并到我的tmux状态栏中。为了给出一些背景知识,我的测试将输出到一个名为test_status
的文件,其中包含.guard_result
或success
,failure
函数从该文件中读取并回显如果我的测试是传球和❤️如果他们失败了。
好消息是test_status
运行正常,我只是无法使用tmux。我在这里缺少什么?
test_status
此功能有效......这是Tmux配置(不显示结果):
# ~/.oh-my-zsh/custom/aliases.zsh
function test_status {
if [ ! -f "./.guard_result" ]; then
echo "?"
return 1
fi
result="$(cat ./.guard_result)"
if [[ $result == *"success"* ]]
then
echo "";
elif [[ $result == *"fail"* ]]
then
echo "❤️";
fi
}
我知道我必须遗漏一些简单的东西......谢谢你的帮助!
答案 0 :(得分:1)
tmux
将shell命令传递给/bin/sh
而不是zsh
。即使tmux
使用zsh
,该函数也无法在该上下文中使用~/.zshrc
,只加载 oh-my-zsh 用于交互式shell。
为了将test_status
的输出转换为tmux
,我建议将该函数放入zsh脚本并调用它。
您可以在脚本中找到~/.oh-my-zsh/custom/aliases.zsh
,然后拨打test_status
:
#!/usr/bin/zsh
# ^ make sure this reflects the path to zsh (`type zsh`)
source ~/.oh-my-zsh/custom/aliases.zsh
test_status
或者您可以将整个函数放入脚本中,以免混乱alias.zsh
:
#!/usr/bin/zsh
function test_status {
if [ ! -f "./.guard_result" ]; then
echo "?"
return 1
fi
result="$(cat ./.guard_result)"
if [[ $result == *"success"* ]]
then
echo "";
elif [[ $result == *"fail"* ]]
then
echo "❤️";
fi
}
在某处保护脚本(例如/path/to/test_status.zsh
),使其可执行(chmod a+x /path/to/test_status.zsh
)并按tmux
配置中的路径调用。