此文件有什么问题?我想将最少70个文件打印到最小文件中。谢谢
awk 'BEGIN{a=100000}{if ($1<0+a) a=$1} END{print a}' file[01-70].asc > min
答案 0 :(得分:2)
从01到70列出文件的方法有很多,但是val unionbroadcastdf = channel_view_by_time.alias("t1")
.join(broadcast(channel_view_by_time.alias("t2")),
$"t1.channel_id" === $"t2.channel_id" and $"t1.dow" === $"t2.dow"
).select($"t1.user_id", $"t1.channel_id", $"t1.dow", $"t1.tod".alias("tod1"), $"t2.tod".alias("tod2")).distinct()
不是其中一种。考虑:
[01-70]
简而言之,您可能只想使用$ echo file{01..10}.asc
file1.asc file2.asc file3.asc file4.asc file5.asc file6.asc file7.asc file8.asc file9.asc file10.asc
$ for i in $(seq -w 10); do touch file$i.asc; done
$ ls
file01.asc file02.asc file03.asc file04.asc file05.asc file06.asc file07.asc file08.asc file09.asc file10.asc
$ ls file*.asc
file01.asc file02.asc file03.asc file04.asc file05.asc file06.asc file07.asc file08.asc file09.asc file10.asc
$ ls file{10,0{1..9}}.asc
file01.asc file02.asc file03.asc file04.asc file05.asc file06.asc file07.asc file08.asc file09.asc file10.asc
$ ls file[01-10].asc
ls: file[01-10].asc: No such file or directory
$ echo file[01-10].asc
file[01-10].asc
或awk ... file0{1..9}.asc file{10..70}.asc
或file[01234567][0123456789].asc
,但是您也许可以简单地使用file[01234567][[:digit:]].asc
答案 1 :(得分:2)
正确的是使用END
而不是我写的ENDFILE
,因此OP解决方案应该可以工作。
cat f1
10
1
cat f2
20
2
cat f3
30
3
awk '{f+=$1} ENDFILE {print FILENAME,"ENDFILE="f} END {print "All file END="f}' f[1-3]
f1 ENDFILE=11
f2 ENDFILE=33
f3 ENDFILE=66
All file END=66
ENDFILE
在每个文件的末尾运行
读取所有文件后,将运行END
。
答案 2 :(得分:1)
请您尝试以下。
awk '{min=min<=$1?(min!=""?min:$1):$1} END{print min}' file{01..70}.asc
如果对结果满意,则也按照您显示的代码将其输出重定向到> min
。公平的警告,由于您的帖子中未提供任何示例,因此该代码未经测试。
说明: 在上述代码中添加说明。
awk ' ##Starting awk program from here.
{ ##Starting main BLOCK from here.
min=min<=$1?(min!=""?min:$1):$1 ##Creating a variable min where checking if min value is NULL then assign it to $1 OR min is greater than $1 then assign it as $1 or keep it as it is.
} ##Closing main block here.
END{ ##Starting END section of this program here.
print min ##Printing min variable value here.
}
' file{01..70}.asc ##Mentioning Input_file(s) names by file01 to file70.asc