在 Linux 环境下,有时我们需要将两列数字相加。本文将介绍几种 来实现这一目标。
使用 shell 命令
最简单的 是使用 shell 命令。例如,要将文件 column1.txt 和 column2.txt 中的两列数字相加,我们可以使用以下命令:
paste column1.txt column2.txt | awk '{print $1 + $2}'
此命令将并排显示两列数字,然后使用 awk 命令将对应行中的数字相加。
使用 Python
也可以使用 Python 来相加两列数字。以下示例创建一个名为 add_columns.py 的 Python 脚本:
python
import csv
with open('column1.txt', 'r') as f1, open('column2.txt', 'r') as f2:
reader1 = csv.reader(f1)
reader2 = csv.reader(f2)
for row1, row2 in zip(reader1, reader2):
print(int(row1[0]) + int(row2[0]))
此脚本从两个文件中读取数字并使用 int() 函数将它们转换为整数,然后将它们相加并打印结果。
使用 awk
awk 是一种文本处理语言,非常适合处理列数据。以下示例将两列数字相加:
awk
BEGIN {
FS = ","
}
{
sum += $1 + $2
}
END {
print sum
}
此脚本将两列数字相加并打印总和。
使用 sed
sed 是一种文本编辑器,也可以用于相加两列数字。以下示例将两列数字相加并将其存储在变量 sum 中:
sed
!/bin/sed -f
:loop
s/^([0-9]+),([0-9]+)$/\1+\2/
t loop
s/\(.*\)+\(.*\)/sum=\1+\2/
此脚本使用 s 命令替换行中的数字,并在最后使用 sum 命令存储总和。