在文本文件中划分RGB值

时间:2014-10-15 03:53:36

标签: bash

我有一个包含RGB值的文本文件。我需要将每个值除以255,然后将其保存到新的文本文件,或打印到控制台。

带有RGB值的文本文件(每个数字前两个空格):

42  107   40  #

50  114   41  #

需要更改为类似的东西(数字之间只需要一个空格):

0.164706 0.419608 0.156862

0.196078 0.447059 0.160784

1 个答案:

答案 0 :(得分:1)

awk可以有效地做到这一点

awk '{for (i=1;i<=NF;i++) $i=$i/255; print $0}' inputfile

OR

较短的版本

awk '{for (i=1;i<=NF;i++) $i=$i/255}1' inputfile

将提供输出

0.164706 0.419608 0.156863
0.196078 0.447059 0.160784

它做什么?

NF行中的字段数或列数。默认情况下用空格分隔。

for (i=1;i<=NF;i+) $i=$i/255 $i选择第i列将其除以255

print $0将打印整个记录。