}
#use String::ShellQuote;
+#use IPC::Run;
sub cmd {
my $cmd = join(' ',@_);
- # NB 14.12.22 #$cmd =~ s/\$'\\t'/"\t"/g;
- #$cmd =~ s/(')/\\$1/g;
-# NB 14.12.22 #die $cmd;
- # NB 14.12.22 my @cmd = `$cmd`;
- # NB 14.12.22 die "$!" if $?;
- # NB 14.12.22 return wantarray ? @cmd : join('',@cmd);
+ #$cmd = 'echo zaza';
+
+ # NB 15.12.22 #$cmd =~ s/(')/\\$1/g;
+ # NB 15.12.22 my @cmd = `$cmd`;
+ # NB 15.12.22 die "ERR:$! $?" if $?;
+ # NB 15.12.22 return wantarray ? @cmd : join('',@cmd);
+# NB 15.12.22
my $hcmd;
- my $pid;
- die $! unless defined ($pid = open($hcmd,"-|"));
- if ($pid == 0) {
- exec "$cmd";
- }
+ open($hcmd,"-|",$cmd) or die "$!: $?: $@";
my @cmd = <$hcmd>;
close $hcmd;
- #waitpid $pid,0;
- die "ERROR $cmd: $!" if $? != 0;
return wantarray ? @cmd : join('',@cmd);
+
+ # NB 15.12.22 my $hcmd;
+ # NB 15.12.22 my $pid;
+ # NB 15.12.22 die $! unless defined ($pid = open($hcmd,"-|"));
+ # NB 15.12.22 if ($pid == 0) {
+ # NB 15.12.22 exec "$cmd";
+ # NB 15.12.22 die 'Can not exec: $cmd';
+ # NB 15.12.22 }
+ # NB 15.12.22 my @cmd = <$hcmd>;
+ # NB 15.12.22 close $hcmd;
+ # NB 15.12.22 die "ERROR $cmd: $!" if $? != 0;
+ # NB 15.12.22 #waitpid $pid,0;
+ # NB 15.12.22 return wantarray ? @cmd : join('',@cmd);
}
sub shell_replace {
$cmd = $2;
push @lines, $line;
push @lines, map{ s/^/$blank/; $_ } &cmd($cmd);
- $_ = <$hfile>;
+ $line = <$hfile>;
} else {
#
nb_api() {
local uri="$1"; shift
local auth=""
- #=SHELL_REPLACE ssh root@ldap.nbdom.net grep CLEARTEXT /etc/ldap/nbdom.net/auth/nb.ldif | awk -F '}' '{print "auth=\"nb:"$2"\""}'
-
+ #>SHELL_REPLACE ssh -nq root@ldap.nbdom.net 'grep CLEARTEXT /etc/ldap/nbdom.net/auth/nb.ldif' | awk -F '}' '{print "auth=\"nb:"$2"\""}'
+ #<SHELL_REPLACE
[ -z "$auth" ] && auth="nb:0TXARcQUpjHZctoROA2X.weWSZKM5DGT"
if [ -n "$auth" -a x = x$(awk '/^machine api.nbdom.net / { print $4":"$6}' $HOME/.netrc 2> /dev/null) ]; then