gpt4 book ai didi

bash - 我怎样才能从变量中发出回显处理颜色命令?

转载 作者:行者123 更新时间:2023-11-29 09:25:33 24 4
gpt4 key购买 nike

我正在编写一个需要颜色输出的 bash 脚本。我有一个文本文件,当它打印到屏幕上时需要像这样格式化:

>Barry's Whiskey Glass Drink Cup, XL 10 oz Dri...        $0.75
example.org/product-page.php?id=1228741

>Cotton Bath Towel Pool Towel Brown - Easy Car... $6.11
example.org/product-page.php?id=1228763

>Cotton Bath Towel Pool Towel Red - Easy Care ... $6.11
example.org/product-page.php?id=1228766

>Mosiso MacBook Case for iPad Pro 12.9/MacBook... $1.95
example.org/product-page.php?id=1228850

“>.....”文本需要一种颜色,“$...”另一种颜色,“example.org....”浅灰色。我试过这个:

  tac newlist.txt | sed 's/ >/\r\n   >/' > bwtext.txt

sed -i 's/>/>\\033\[0;34m/g' bwtext.txt
sed -i 's/\$/\$\\033\[0;33m/g' bwtext.txt
sed -i 's/http/\\033\[0;37mhttp/g' bwtext.txt

while read line
do
echo -e "${line}"
done < bwtext.txt

这会将正确的转义码插入到文件中,但是当逐行回显时,它不会处理代码,而是按字面打印它们。

>033[0;34mFor Fitbit Alta Accessory Band, Silicone Repl...        $033[0;33m1.97      
033[0;37mexample.org/product-page.php?id=1247364

>033[0;34mTattify Gradient Nail Wraps - Love Like a Sun... $033[0;33m0.99
033[0;37mexample.org/product-page.php?id=1247367

>033[0;34mEA AromaCare Eucalyptus Essential Oil 120ml/4... $033[0;33m3.00
033[0;37mexample.org/product-page.php?id=1247370

... waiting 10 minutes for next update ...

我做错了什么,或者我怎样才能做对?谢谢。

最佳答案

您在文件中有正确的转义序列,但在您的 while 循环中未读取这些序列。尝试在阅读时添加原始输入标志 (-r),这不会解释转义序列并为您提供所需的格式。

while read -r line
do
echo -e "${line}"
done < bwtext.txt

关于bash - 我怎样才能从变量中发出回显处理颜色命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37669164/

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