我最近开始在 Windows 7 计算机上使用 MinGW 而不是 Cygwin,但 MinGW 的 有点问题ls
。在 Cygwin 中,ls
有一个--group-directories-first
选项,显然会导致目录列在其他文件类型之前。但是,MinGW 似乎没有这个选项,我找不到它的替代品。有替代品吗?
答案1
这属于“替代品”。以下脚本将大致模拟其行为,ls –l
不同之处在于它在每个目录列表的开头对子目录进行分组。
/bin/sh - #! 排序_ls_输出() { sed -n -e ‘1s/^/1#/p’ -e ‘1n’ \ -e 's/^/#/' -e 's/^#d/2#d/' -e 's/^#/3#/' -ep \ | cat -n | sort -n -k2 -k1 | sed's/[^#]*#//' } 如果 [ $# = 0 ] 然后 ls -l | sort_ls_输出 别的 对于参数 做 回声 如果[-d“$arg”] 然后 回显“${arg}:” ls -l “$arg” | sort_ls_output 别的 ls -l “$arg” 菲 完毕 菲
这是粗略的版本。它不会像命令行那样处理单个普通文件(非目录) ,而且它根本ls –l
不处理选项(例如)。–a