使用oc rsh在容器中运行for循环(openshift远程ssh)?

使用oc rsh在容器中运行for循环(openshift远程ssh)?,openshift,rsh,Openshift,Rsh,基于: 我试图通过oc rsh运行for循环命令,但失败,错误如下: $ 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

基于:

我试图通过oc rsh运行for循环命令,但失败,错误如下:

$ 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 which bash
/usr/bin/bash
假设/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的示例

这就成功了:

oc exec my-app-10-lprki -- bash -c 'for i in /var/lib/; do echo $i; done'

您好,您可以在/var/lib/*中为i使用ocrsh my-app-10-lprki-bash-c吗;不要重复$i;doneThat gives:exec failed:container\u linux.go:345:启动容器进程导致exec:\-\:在$PATHuse/bin/bash或/bin/sh中找不到可执行文件,而不是bash,具体取决于容器中的shell。你能描述一下你的pod oc描述pod$pod\u名称吗?假设它正在运行你正在从windows执行命令吗?你能rsh吗进入pod并运行echo$SHELL或哪个sh或哪个bash?是的,我看到了我的更新帖子。但是当使用exec替代时,它看起来是有效的,并且使用稍微不同的参数GRAD,它是有效的。很奇怪,它不适用于rsh。可能是个虫子。
oc rsh my-app-10-lprki -- /bin/sh  -c  'for i in `ls  /var/lib`; do echo $i; done'
[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
oc exec my-app-10-lprki -- bash -c 'for i in /var/lib/; do echo $i; done'