我被朋友挑战要做以下事情:
"找到按文件名的最后一个字符排序目录列表的最快捷最简单的方法."
他是在Linux上使用以下方法完成的:
ls | rev | sort | rev
Run Code Online (Sandbox Code Playgroud)
我想向他展示powershell的替代方案,但我只是刚刚开始学习powershell而我无法做到.所以,我在欺骗并寻求你的帮助.
这是我的条目:
ls | sort {"$_"[-1]}
Run Code Online (Sandbox Code Playgroud)
并获得病态:
ls|sort{"$_"[-1]}
Run Code Online (Sandbox Code Playgroud)
不幸的是,Powershell没有一个很好的简单反向方法,所以你必须得到字符串的最后一个字母并按此排序.这是我做过的一种方式:
dir| sort {$_.name.Substring($_.name.length-1)}
Run Code Online (Sandbox Code Playgroud)
正如已经指出的那样,这将严格按最后一个字母排序,而我的Linux版本将按最后一个字母和后续字母排序,因此可能有更好的方法来执行此操作,或者您可能必须引入一些循环如果你想那样的话.
| 归档时间: |
|
| 查看次数: |
3587 次 |
| 最近记录: |