我想排序svn status
输出,但不知怎的,这个命令
svn status | sort
不对输出进行排序。 你知道为什么吗?
例如:
$ svn status
? idrd
? core.7319
? difftest
? core.29328
A + rf_common/ext_api.sav
D rf_common/ext_api/firewall_defs.h
D rf_common/ext_api/rf_macro.h
? firewall/src/hash2tuple.cpp.sav
! firewall/src/hash2tuple.cpp
M main.cpp
M makefile
$ svn status | sort
A + rf_common/ext_api.sav
? core.29328
? core.7319
? difftest
D rf_common/ext_api
D rf_common/ext_api/firewall_defs.h
D rf_common/ext_api/rf_macro.h
! firewall/src/hash2tuple.cpp
? firewall/src/hash2tuple.cpp.sav
? idrd
M main.cpp
M makefile
例如,问号没有排序。
答案 0 :(得分:2)
您似乎希望sort
禁用最后的比较。
说
sort -s -k1,1
输入的将产生:
! firewall/src/hash2tuple.cpp
? idrd
? core.7319
? difftest
? core.29328
? firewall/src/hash2tuple.cpp.sav
A + rf_common/ext_api.sav
D rf_common/ext_api/firewall_defs.h
D rf_common/ext_api/rf_macro.h
M main.cpp
M makefile
引用man sort
:
-s, --stable
stabilize sort by disabling last-resort comparison
最后,作为所有键比较相等的最后手段,排序比较 整条线,好像没有
--reverse (-r)
以外的订购选项 被指定了。--stable (-s)
选项禁用此最后手段 比较,以便所有字段比较相等的行保留 他们原来的相对秩序。