嘿,我想知道如何让这段代码工作.基本上我想保留行,$filename只要它们包含$user在路径中:
open STDERR, ">/dev/null";
$filename=`find -H /home | grep $file`;
@filenames = split(/\n/, $filename);
for $i (@filenames) {
if ($i =~ m/$user/) {
#keep results
} else {
delete $i; # does not work.
}
}
$filename = join ("\n", @filenames);
close STDERR;
Run Code Online (Sandbox Code Playgroud)
我知道你可以删除,delete $array[index]但我没有这种循环的索引,我知道.
Jon*_*Jon 10
您可以用以下代码替换循环:
@filenames = grep /$user/, @filenames;
Run Code Online (Sandbox Code Playgroud)