2017-04-27 248 views
1

这是我的目标: 我想查看磁盘使用情况并按列表大小排序,并将其作为别名。Bash别名du-sh +排序

我在论坛上看到du -hs somedirectory |sort -h会做前两个工作,这是真的。 如何将这个放在我的.bash_aliases中?

下一行工作,但我不能选择该目录了

alias du="du -hs * |sort -h"

谢谢您的帮助!

ř

+0

添加你添加名称...建议后试图完整的命令,使用除'du'其他的东西你的别名...如果你想要传递目录名称到你的快捷方式,你需要使用函数而不是别名 – Sundeep

+0

当我在一个目录中,我想能够做'du。/ somedirectory/*'或'du *' – RoBo

+0

谢谢Sundeep,功能的东西是我一直在寻找! – RoBo

回答

1

alias不能传递动态参数到第一命令。您需要使用function来实现这一点:在你的.bashrc文件

dirsize() { 
    du -hs $* | sort -h 
} 

把这个。然后,

$ dirsize Development/ Documents/ Videos/ 
86M Documents/ 
92M Development/ 
5.6G Videos/ 

要使一个alias

$ alias du=dirsize 
+0

作品!非常感谢,我认为这正是我一直在寻找的! – RoBo