第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何按照Windows資源管理器的方式按文件名排序?

如何按照Windows資源管理器的方式按文件名排序?

如何按照Windows資源管理器的方式按文件名排序?這是應(yīng)用于powershell的“ASCIIbetical”命令與“Natural”命令的著名問題。為了能夠以與資源管理器相同的方式對(duì)powershell進(jìn)行排序,您可以在StrCmpLogicalW API上使用此包裝器,它實(shí)際上為Windows資源管理器執(zhí)行自然排序。這需要一些管道。但是,這篇文章表明在python中有一個(gè)三線程實(shí)現(xiàn)的排序。人們希望Get-ChildItem cmdlet或至少文件系統(tǒng)提供程序可以具有內(nèi)置的自然排序選項(xiàng)。不幸的是,他們沒有。所以這是一個(gè)問題,Powershell中最簡(jiǎn)單的實(shí)現(xiàn)是什么?簡(jiǎn)單來(lái)說,我的意思是編寫的代碼量最少,可能沒有第三方/外部腳本/組件。理想情況下,我想要一個(gè)簡(jiǎn)短的 Powershell函數(shù)來(lái)為我做排序。
查看完整描述

3 回答

?
繁花如伊

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊

下面是一些非常簡(jiǎn)短的代碼(只是$ToNatural腳本塊),它使用正則表達(dá)式和匹配賦值器來(lái)處理帶有空格的數(shù)字。然后我們像往常一樣用填充數(shù)字對(duì)輸入進(jìn)行排序,結(jié)果實(shí)際上得到了自然順序。


$ToNatural = { [regex]::Replace($_, '\d+', { $args[0].Value.PadLeft(20) }) }


'----- test 1 ASCIIbetical order'

Get-Content list.txt | Sort-Object


'----- test 2 input with padded numbers'

Get-Content list.txt | %{ . $ToNatural }


'----- test 3 Natural order: sorted with padded numbers'

Get-Content list.txt | Sort-Object $ToNatural

輸出:


----- test 1 ASCIIbetical order

1.txt

10.txt

3.txt

a10b1.txt

a1b1.txt

a2b1.txt

a2b11.txt

a2b2.txt

b1.txt

b10.txt

b2.txt

----- test 2 input with padded numbers

                   1.txt

                  10.txt

                   3.txt

a                  10b                   1.txt

a                   1b                   1.txt

a                   2b                   1.txt

a                   2b                  11.txt

a                   2b                   2.txt

b                   1.txt

b                  10.txt

b                   2.txt

----- test 3 Natural order: sorted with padded numbers

1.txt

3.txt

10.txt

a1b1.txt

a2b1.txt

a2b2.txt

a2b11.txt

a10b1.txt

b1.txt

b2.txt

b10.txt

最后我們使用這個(gè)單行按照自然順序按名稱對(duì)文件進(jìn)行排序:


Get-ChildItem | Sort-Object { [regex]::Replace($_.Name, '\d+', { $args[0].Value.PadLeft(20) }) }

輸出:


    Directory: C:\TEMP\_110325_063356


Mode                LastWriteTime     Length Name                                                                                                                  

----                -------------     ------ ----                                                                                                                  

-a---        2011-03-25     06:34          8 1.txt                                                                                                                 

-a---        2011-03-25     06:34          8 3.txt                                                                                                                 

-a---        2011-03-25     06:34          8 10.txt                                                                                                                

-a---        2011-03-25     06:34          8 a1b1.txt                                                                                                              

-a---        2011-03-25     06:34          8 a2b1.txt                                                                                                              

-a---        2011-03-25     06:34          8 a2b2.txt                                                                                                              

-a---        2011-03-25     06:34          8 a2b11.txt                                                                                                             

-a---        2011-03-25     06:34          8 a10b1.txt                                                                                                             

-a---        2011-03-25     06:34          8 b1.txt                                                                                                                

-a---        2011-03-25     06:34          8 b2.txt                                                                                                                

-a---        2011-03-25     06:34          8 b10.txt                                                                                                               

-a---        2011-03-25     04:54         99 list.txt                                                                                                              

-a---        2011-03-25     06:05        346 sort-natural.ps1                                                                                                      

-a---        2011-03-25     06:35         96 test.ps1            


查看完整回答
反對(duì) 回復(fù) 2019-08-13
  • 3 回答
  • 0 關(guān)注
  • 1637 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)