0

基于:

https://unix.stackexchange.com/questions/1459/remote-for-loop-over-ssh

我正在尝试运行 for 循环命令,oc rsh但它失败并出现以下错误:

$ oc rsh my-app-10-lprki 'for i in /var/lib/*; do echo $i; done'
exec failed: container_linux.go:345: starting container process caused "exec: \"for i in /var/lib/*; do echo $i; done\": stat for i in /var/lib/*; do echo $i; done: no such file or directory"
command terminated with exit code 1

我也试过不带引号,带双引号,但也失败了。

这工作正常(不带引号):

$ oc rsh my-app-10-lprki ls -la /var/lib/
total 24
drwxr-xr-x.  1 root       root   104 Nov 22 22:21 .
drwxr-xr-x.  1 root       root    17 Sep 28  2017 ..
drwxr-xr-x.  2 root       root    44 Sep 28  2017 alternatives

关于如何通过oc rsh类似远程运行 for 循环的任何建议(当前失败):

oc rsh my-app-10-lprki 'for i in /var/lib/*; do echo $i; done'

?

基于以下建议,我也尝试过:

$ oc rsh my-app-10-lprki -- /bin/sh  -c  'for i in `ls  /var/lib`; do echo $i; done'
exec failed: container_linux.go:345: starting container process caused "exec: \"--\": executable file not found in $PATH"
command terminated with exit code 1

和:

$ oc rsh my-app-10-lprki -- /bin/bash  -c  'for i in `ls  /var/lib`; do echo $i; done'
exec failed: container_linux.go:345: starting container process caused "exec: \"--\": executable file not found in $PATH"
command terminated with exit code 1

和:

$ oc rsh my-app-10-lprki -- /usr/bin/bash  -c  'for i in `ls  /var/lib`; do echo $i; done'
exec failed: container_linux.go:345: starting container process caused "exec: \"--\": executable file not found in $PATH"
command terminated with exit code 1

在哪里:

$ oc rsh my-app-10-lprki which bash
/usr/bin/bash
4

2 回答 2

2

这成功了:

oc exec my-app-10-lprki -- bash -c 'for i in /var/lib/; do echo $i; done'
于 2019-11-27T18:28:29.830 回答
0

假设/bin/sh 你的容器中有外壳

oc rsh my-app-10-lprki -- /bin/sh  -c  'for i in `ls  /var/lib`; do echo $i; done'

将列出/var/lib目录中的文件

这是mysql pod的例子

[suresh.vishnoi@blah ~]$ oc exec  mysql-4-lnlpx --  /bin/sh  -c  'for i in `ls  /var/lib`; do echo $i; done'
alternatives
dbus
games
initramfs
machines
misc
mysql
rhsm
rpm
rpm-state
selinux
systemd
yum
于 2019-11-27T11:44:21.537 回答