Ran*_*gev 6 linux svn sorting bash
我想排序svn status
输出,但不知何故这个命令
svn status | sort
Run Code Online (Sandbox Code Playgroud)
不排序输出.你知道为什么吗?
例如:
$ 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
Run Code Online (Sandbox Code Playgroud)
例如,问号没有排序.
您似乎想sort
禁用最后手段比较。
话说
sort -s -k1,1
Run Code Online (Sandbox Code Playgroud)
你的输入会产生:
! 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
Run Code Online (Sandbox Code Playgroud)
引用man sort
:
-s, --stable
stabilize sort by disabling last-resort comparison
Run Code Online (Sandbox Code Playgroud)
从排序调用:
最后,作为最后的手段,当所有键比较相等时,排序会比较整行,就好像没有
--reverse (-r)
指定任何排序选项一样。该--stable (-s)
选项禁用这种最后的比较,以便所有字段比较相等的行保留其原始相对顺序。