gpt4 book ai didi

Bash:在管道中间设置一个shell变量

转载 作者:行者123 更新时间:2023-11-29 09:48:21 26 4
gpt4 key购买 nike

我有来自某些命令的文本(例如,它是 echo -e "10 ABC\n5 DEF\n87 GHI")。这段文本通过管道,我得到了想要的输出(例如它是 GHI)。需要的输出被发送到以下管道步骤(例如 | xargs -I {} grep -w {} FILES |)。
我的问题是:
我想在发送到后续步骤之前将变量附加到“内部管道”输出 - 我该怎么做?


示例:

echo -e "10 ABC \n5 DEF \n87 GHI" | 
sort -nr -k1 |
head -n1 |
cut -f 2 | # Wanted output comes here. I want to append it to a variable before it goes to `grep`
xargs -I {} grep -w {} FILES |
# FOLLOWING ANALYSIS

最佳答案

您不能在管道中间设置 shell 变量,但您可以使用 tee 命令将输出发送到一个文件,然后稍后读取该文件。

echo -e "10 ABC \n5 DEF \n87 GHI" | 
sort -nr -k1 |
head -n1 |
cut -f 2 |
tee intermediate.txt |
xargs -I {} grep -w {} FILES |
# FOLLOWING ANALYSIS

# intermediate.txt now contains 87 GHI

关于Bash:在管道中间设置一个shell变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19430257/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com