我想從一個目錄中的最大版本號在那裏我有一個程序我如何添加一些文字管無臨時文件
例如幾個版本,如果LS的輸出
something01_1.sh
something02_0.1.2.sh
something02_0.1.sh
something02_1.1.sh
something02_1.2.sh
something02_2.0.sh
something02_2.1.sh
something02_2.3.sh
something02_3.1.2.sh
something.sh
我得到最大的版本號與以下 -
ls somedir | grep some_prefix | cut -d '_' -f2 | sort -t '.' -k1 -r | head -n 1
現在,如果在同一時間,我想用的版本號,我已經在系統中,以檢查其最新最好的辦法做到這一點......在bash
我得到這個工作(如果2.5是當前版本)
(ls somedir | grep some_prefix | cut -d '_' -f2; echo 2.5) | sort -t '.' -k1 -r | head -n 1
有沒有做任何其他的正確方法?
編輯:在上面的例子some_prefix是東西02。
編輯:這裏實際的問題是
(ls smthing; echo more) | sort
是它合併兩個命令/程序的輸出管道聯接到第三的最佳方式。
您是否考慮過使用真正的版本控制系統,比如'git'? – 2013-03-15 21:09:56
這個決定不是我的。 – Mohit 2013-03-15 22:04:34