Ole*_*den 4 bash io-redirection
我正在学习 bash 重定向,想知道是否有一种方法可以使用重定向来模拟 tee 命令。那可能吗?或者可能还有其他一些方法可以做到这一点。
在询问 tee 之前,我只是寻求一种使用 bash 表达式将一个流分成两个相同流的可能性。但这似乎是不可能的。
假设 Here 是一个与tee
和具有相同功能的 bash 函数tee -a
,假设该文件不包含\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4!
(您可以根据自己的喜好调整此字符串,以使文件极不可能包含它):
tee(){\n [ "$1" = \'-a\' ] && shift || rm -f "$1"\n sed \'s/\\x0/\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4!/g\' - | while read line; do\n echo "$line" | sed \'s/\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4\xc2\xa4!/\\x0/g\' >> "$1"\n done\n}\n
Run Code Online (Sandbox Code Playgroud)\n使用 bash 和 zsh 进行测试。
\n使用示例:
\necho asdf | tee -a file\n
Run Code Online (Sandbox Code Playgroud)\n