按第二列排序,第五列保持不变 cat file1: 123,37,39,4,1 123,36,39,4,1 123,37,39,4,0 希望的排序结果: 123,36,39,4,1 123,37,39,4,1 123,37,39,4,0 Shell code:sort -t, +1n -4n 1 [ 本帖最后由 moog 于 2008-5-12 11:35 编辑 ]
排序(sort)或分类 所谓排序,就是要整理文件中的记录,使之按关键字递增(或递减)次序排列起来。其确切定义如下: 输入:n个记录R1,R2,…,Rn,其相应的关键字分别为K1,K2,…,Kn。 输出:Ril,Ri2,…,Rin,使得Ki1≤Ki2≤…≤Kin。(或Ki1≥Ki2≥…≥Kin)。 1.被排序对象--文件 被排序的对象--文件由一组记录组成。 记录则由若干个数据项(或域)组成。其中有一项可用来标识一个记录,称为关键字项。...
typedef struct _XXX { ... }XXX; template < class T > bool OpeLess( const T &tmp1, const T &tmp2 ) { ... } vector < XXX > vec; sort( vec.begin(), vec.end(), OpeLess ); 报错: Argument of type '_XXX *' could not be converted to '_XXX *'. 可是这两个类型是一样的啊!如果不用template < class T >,OpeLess用实际的类型则正确。
现有一个文件A: Class02_No.10 Class01_No.2 Class02_No.3 Class01_No.10 Class01_No.1 我想实现如下效果 Class01_No.1 Class01_No.2 Class01_No.10 Class02_No.3 Class02_No.10 我执行: sort -t_ +0 A 结果为: Class01_No.1 Class01_No.10 Class01_No.2 Class02_No.10 Class02_No.3 关键是在第二个字段怎么处理使No.10排到No.2或No.3之后,希望高手指点
[root@test1 shell]# cat 2.txt 2008-05-15,xutu,468x60,"273",10000101,a00,p00101,1 2008-05-15,xutu,468x60,"第80章 我要和你一起死",10000101,a00,p00101,1 2008-05-15,xutu,468x60,"低调也难?第一百八十九章 公会战争的爆发",10000101,a00,p00101,1 2008-05-15,zhang,468x60,"第十四卷 厚积薄发 第二十四章 北风劲吹(1)",10000101,a00,p00101,1 2008-05-15,xutu,468x60,"网游三国之城市攻略",10000101,a00,p00101,1 2008-...
/usr/cib/down/cmn/XR8731.src /usr/cib/down/cmn/XR8733.src /usr/cib/down/cmn/XS8731.src /usr/cib/down/cmn/XS8733.src /usr/cib/form/src/fm8731.src /usr/cib/form/src/fm8733.src /usr/cib/proc/muprt/del8731.src /usr/cib/proc/muprt/del8733.src /usr/cib/sql/ct8731.sql /usr/cib/sql/ct8733.sql 数据如上,我希望以最后一个字段里的数字(8731,8733)排序,问题是最后一个字段的位置不一样,并且有字符,我希望的排序...
请问下个为,在awk脚本中,能用sort給数组排序么?如下:数组 n--mores[n] Elizabeth Stachelin--(916) 440-1763 Tom Savage--(408) 926-3456 Archie McNichol--(206) 548-1348 Dan Savage--(406) 298-7744 John Goldenrod--(916) 348-4278 Guy Quigley--(916) 343-6410 Mike Harrington--(510) 548-1278 例:more[Elizabeth Stachelin]=(916) 440-1763 现在需要以n的下标的第二个字段排序,用sort能作么?谢谢!
由于程序需要,我建立了如下数据结构的hash: # %record = ( # "dump" = ( # name => "dump", # times => 123, # lastrun => "20071007", # ...
设有文件如下 aaa 2 bbb 12 ccc 9 有执行如下操作 cat file | sort -k2 bbb 12 aaa 2 ccc 9 可我想得到的是 bbb 12 ccc 9 aaa 2 请教怎么办?