From: Nicolas Boisselier Date: Thu, 15 Dec 2022 18:56:05 +0000 (+0100) Subject: shell_replace carefull ssh command need option -n X-Git-Url: https://git.nbdom.net/?a=commitdiff_plain;h=4bdf90e0f79d96b6fa94c31d55cedc990c3dc392;p=nb.git shell_replace carefull ssh command need option -n --- diff --git a/bin/shell-replace b/bin/shell-replace index 801f65eb..b25dd545 100755 --- a/bin/shell-replace +++ b/bin/shell-replace @@ -195,25 +195,34 @@ sub wanted { } #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 { @@ -263,7 +272,7 @@ sub shell_replace { $cmd = $2; push @lines, $line; push @lines, map{ s/^/$blank/; $_ } &cmd($cmd); - $_ = <$hfile>; + $line = <$hfile>; } else { # diff --git a/etc/profile.d/nb.sh b/etc/profile.d/nb.sh index 9dfad210..f4fdd090 100644 --- a/etc/profile.d/nb.sh +++ b/etc/profile.d/nb.sh @@ -86,8 +86,8 @@ nb_php() { 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"\""}' + # /dev/null) ]; then