【发布时间】:2013-04-02 18:44:07
【问题描述】:
我有一个 Perl 脚本,其中包含以下 sn-p:
@mylittlearray = split(/\/dir1\/dir2\//, `du --max-depth=1 \/dir1\/dir2\//`
print $mylittlearray[0];
print $mylittlearray[1];
print "\n";
输出是
24 ones
8
mylittlearray[0] 和 [1] 应该只返回 24 和 "ones",而不是 "ones8"。如果我将 du 命令传送到文件并在 VIM 中打开设置列表,我会看到以下内容:
24^I./ones$
8^I./twos$
如果我使用-0 运行du 命令,我会看到:
24 ./ones^@8 ./twos^@8 ./threes^@8 ./fours^@8 ./fives^@80 .^@
我试图弄清楚如何拆分这两种格式,以便将目录名称与下一个目录的大小分开或拆分。换句话说,我希望 mylittlearray[0] 等于 24,mylittlearray[1] 只包含 "ones",mylittlearray[2] 将包含 "8" 等等.
关于如何实现这一点的任何想法?
【问题讨论】:
-
你能告诉我如何得到结果“24”而不是“24 个”吗? |xargs {'print $1'} 也不起作用
-
我知道了:我必须给 |xargs {'print \$1'}