我有XYZ=/opt/Ind
以及/opt/Ind
我按以下方式对目录进行了排序:ls -t $XYZ
然后我只需要获取第一个文件夹的大小。
我试过了
du -sk $(ls -t $XYZ/TAL/ | head -n 1)
它给了我这个错误
du: cannot access `\033[0m\033[01;34m20160525_033732\033[0m': No such file or directory
很高兴能得到帮助。
答案 0 :(得分:2)
这里的问题是你没有使用普通ls
而是别名,因此它为你提供了一些彩色输出。这样,您可以使用蓝色代替普通名称20160525_033732
。
$ echo -e "\033[0m\033[01;34m20160525_033732\033[0m"
20160525_033732
只需使用\ls
to use the original ls
without any alias。
du -sk "$(\ls -t $XYZ/TAL/ | head -n 1)"
# ^
查看别名:
type ls
它可能会返回类似的内容:
ls is aliased to `ls --color=always'
答案 1 :(得分:0)
将--color=never
添加到ls中,以便它不会使输出着色:
du -sk $(ls --color=never -t $XYZ/TAL/ | head -n 1)