ls -1 | grep war | sort -V | tail -n1
다음과 같은 war 파일 이름을 정렬하고 나열하는 명령이 있습니다 .abc-1.4.3.12.war.
정렬 명령에서 V 옵션의 용도는 무엇입니까?
답변1
https://www.gnu.org/software/coreutils/manual/html_node/sort-inspiration.html
'-V'
'--버전 정렬'버전 이름과 번호별로 정렬합니다. 각 십진수 시퀀스가 인덱스/버전 번호로 수치적으로 처리된다는 점을 제외하면 표준 정렬처럼 작동합니다. (바라보다버전 정렬에 대한 세부정보.)
예:
표준 정렬:
$ printf '%s\n' abc-1.4.3.12.war abc-12.1.war abc-1.11.war | sort
abc-1.11.war
abc-12.1.war
abc-1.4.3.12.war
버전별로 정렬:
$ printf '%s\n' abc-1.4.3.12.war abc-12.1.war abc-1.11.war | sort -V
abc-1.4.3.12.war
abc-1.11.war
abc-12.1.war
하지만 여기서는 및 를 사용하지 않고 -v
옵션을 사용할 수도 있습니다 .ls
grep
sort
:
$ touch abc-1.4.3.12.war abc-12.1.war abc-1.11.war
$ ls -1 *war
abc-1.11.war
abc-12.1.war
abc-1.4.3.12.war
$ ls -1v *war
abc-1.4.3.12.war
abc-1.11.war
abc-12.1.war
답변2
남자 종류가 말한다
-V, --version-sort natural sort of (version) numbers within text
https://stackoverflow.com/questions/4493205/unix-sort-of-version-numbers