blob: 6cf0e38f3fe44e7b1509b288f141e227acb102a7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
use v6.d;
unit module Katana::Exec::Command:api<1>;
sub prefix:<❱>(*@args) is export {
say "❱ {@args}";
my \proc = run @args, :out, :err;
.say if .chars > 0 for proc.out.slurp(:close), proc.err.slurp(:close);
}
sub prefix:<⁉>(*@args) is export { ❱ @args unless @args[*-1].IO.f }
sub read-exif-info(Str $file) is export {
my %exif;
my \proc = run 'exiftool', $file, :out;
for proc.out.slurp(:close).split("\n") -> $line {
my ($key, $val) = $line.split(':')[0,1];
next unless defined $val;
%exif{$key.trim} = $val.trim;
}
return %exif;
}
|