當使用光碟機等硬體設備時,必須將其掛載到系統中,只有這樣Linux才能識別。 1、給虛擬機中centos7系統添加一塊新的硬碟,添加以後必須重啟centos7才能生效 2、在root用戶下通過fdisk -l 哈看分區狀態(預設磁碟標簽是dos) 3、對新加的硬碟進行分區,mbr分區最大隻能分4個主分 ...
想使用Shell脚本对某文本文件中无序的一列数字排序并输出求和结果,文本如下所示:
4
2
1
3
50
一开始使用的命令只能输出求和结果,不能同时给出排序结果:
sort -nr t3.txt | awk '{sum+=$1} END {print "sum="sum}'
该命令输出sum=60,无排序结果。原因是sort命令的输出仅仅通过管道传递给了awk命令,而没有输出到标准输出。这里需要同时向管道和标准输出进行输出操作。
首先想到了tee命令,该命令可以从标准输入读入数据,并输出到标准输出和文件。
这里还需要借用标准错误输出来输出排序后的结果,代码如下:
sort -nr t3.txt | tee /dev/stderr | awk '{sum+=$1} END {print "sum="sum}'
这是一个简单的示意图。
这样就实现了题目的需求。