我正在考虑为自己添加一个方便的别名。截至目前,我有一个名为ll
的别名ls -lha
。
但是,我注意到有几次我想列出目录中最新的三个文件。这在控制台中可能很繁琐,尤其是当目录包含数百个文件时。
通常情况下,可以这样做:
ll -1t | head -3
但是,这仍然有点繁琐,因为它需要过滤。ll
将文件总大小打印为顶行。然后它后面跟着 或.
或..
两者,这也应该被过滤掉。有没有好的方法可以做到这一点?
是否可以创建动态别名,例如lll{0-n}
,如果我输入,lll7
它会列出目录中的 7 个最新文件,从最上面的最新文件开始?
答案1
在 中bash
,您可以创建此功能(将其放入您的 中~/.bashrc
,然后获取它):
function lll { ls -at1 | grep -v -e '^\.$' -e '^\.\.$' | head -$1 ; }
要显示从最新到最旧的最近的 7 个文件(不包括.
nor )..
,请在 bash 提示符下输入以下命令:
lll 7