Я пишу код, который должен получить файл с удаленного сервера с использованием Net::SFTP::Foreign
модуля Perl.
Вот сценарий.
my $sftp = Net::SFTP::Foreign->new(
host=>$host,
user=>$user,
password=>$pass
);
$sftp->die_on_error("Unable to establish SFTP connection");
$sftp->setcwd($path) or die "unable to change cwd: " . $sftp->error;
my @files = $sftp->ls($path);
print Dumper(\@files);
Подключение к удаленному серверу работает нормально. Когда я печатаю $sftp->status
, даю 0
в качестве значения, которое означает его успех.
Даже в Dumper я мог видеть файлы с удаленного сервера в следующем формате.
$VAR1 = [
{
'filename' => 'script.py',
'a' => bless( {
'perm' => 33204,
'size' => 25,
'gid' => 1001,
'flags' => 15,
'mtime' => 1571147796,
'uid' => 1001,
'atime' => 1571655805
}, 'Net::SFTP::Foreign::Attributes' ),
'longname' => '-rw-rw-r-- 1 test_vk test_vk 25 Oct 15 13:56 script.py'
},
{
'a' => bless( {
'flags' => 15,
'mtime' => 1571417934,
'atime' => 1571655769,
'uid' => 1001,
'gid' => 1001,
'size' => 369,
'perm' => 33204
}, 'Net::SFTP::Foreign::Attributes' ),
'longname' => '-rw-rw-r-- 1 test_vk test_vk 369 Oct 18 16:58 script.pl',
'filename' => 'script.pl'
},
{
'longname' => '-rw-r--r-- 1 root root 0 Oct 30 04:32 script123.pl',
'a' => bless( {
'gid' => 0,
'size' => 0,
'perm' => 33188,
'flags' => 15,
'mtime' => 1572409960,
'uid' => 0,
'atime' => 1572409960
}, 'Net::SFTP::Foreign::Attributes' ),
'filename' => 'script123.pl'
},
{
];
ЧтоМне нужно это вынести время модификации каждого файла. Это должно быть напечатано как "filename, modification_time"
. Как я могу взять эти значения из Dumper.