作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在编写一个需要颜色输出的 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/
我是一名优秀的程序员,十分优秀!