
最近在用 winscp ,想使用 自定义命令 来查看选中的目录大小(包含子目录)
主要是 winscp 自带的计算速度太慢
假如有目录 aaa,执行 du -sh aaa 输出 652K aaa
我添加了一个自定义命令 du -sh "!" > "!"-size.txt
执行后,当前目录下生成 aaa-size.txt 内容为 652K aaa
有没有什么方法可以把输出结果作为重定向文件的文件名
如上述命名生成的文件名直接为 aaa-size-652K.txt
google 搜索了半天,没搜出来,可能关键字不对.
1 Strikeactor 2016-03-16 17:10:36 +08:00 先把输出赋值给变量,然后在创建文件时使用变量呗 |
2 Alife OP @Strikeactor 谢谢回答先. 好像可以,我去试试先 |
3 Counter 2016-03-16 17:24:13 +08:00 这样喵? touch $(du -sh aaa | cut -d " " -f 2)-size-$(du -sh aaa | cut -d " " -f 1).txt |
5 Counter 2016-03-16 17:42:19 +08:00 @Alife 可能是跟 du -sh aaa 的输出有关,假设输出是 652K aaa ,作为测试 命令 touch $(du -sh aaa | cut -d " " -f 2)-size-$(du -sh aaa | cut -d " " -f 1).txt 等同于 touch $(echo 652K aaa | cut -d " " -f 2)-size-$(echo 652K aaa | cut -d " " -f 1).txt 建议研究下 du -sh aaa 的输出 |
6 xujif 2016-03-16 17:50:51 +08:00 du -sh * | awk '{print $2"-size-"$1".txt"}' | xargs -i touch {} |
8 Alife OP 好了,谢谢大家,结贴 |