linux中如何将多条命令写入在一行中,其中包括while语句,同时,在k8s的command中如何来使用
2022/6/24 5:19:33
本文主要是介绍linux中如何将多条命令写入在一行中,其中包括while语句,同时,在k8s的command中如何来使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
我们有如下的命令:
echo "Error response from daemon: driver failed programming external connectivity on endpoint sad_liskov" > 1.log while : do cat 1.log >> 2.log cat 2.log >> 1.log cat 1.log cat 2.log done
这是个多行的命令,那如果我想要,将这些写在一行,该怎么做呢?
我们知道,不同的命令之间用分号(;)分开,就可以了,那么对于while这种语法结构的怎么做呢?
其实,很简单······
只需要将while中本来是多行的,每个也用分号分开就可以了,我们继续往下看下,改写之后是什么样的······
echo "Error response from daemon: driver failed programming external connectivity on endpoint sad_liskov" > 1.log;while : ;do cat 1.log >> 2.log ;cat 2.log >> 1.log ;cat 1.log ;cat 2.log;done
为了方便展示,我们单独贴出来,将分隔的部分,标记出来
echo "Error response from daemon: driver failed programming external connectivity on endpoint sad_liskov" > 1.log;while : ;do cat 1.log >> 2.log ;cat 2.log >> 1.log ;cat 1.log ;cat 2.log;done
其中标记黄色的是,不同的语句之间的分隔,标记红色的是while语法中,每行的分隔。
这样,我们就可以在一行中,写下整个的命令了,这个在k8s的deployment中,会在command中用到,比如:
- /bin/bash - -c - 'echo "Error response from daemon: driver failed programming external connectivity on endpoint sad_liskov" > 1.log; while : ; do cat 1.log >> 2.log; cat 2.log >> 1.log; cat 1.log; cat 2.log;done'
在被k8s解析后,变成如下的命令:
- command: - /bin/bash - -c - 'echo "Error response from daemon: driver failed programming external connectivity on endpoint sad_liskov" > 1.log; while : ; do cat 1.log >> 2.log; cat 2.log >> 1.log; cat 1.log; cat 2.log;done'
最后的命令,用单引号括起来就行,中间的几行无所谓。
这篇关于linux中如何将多条命令写入在一行中,其中包括while语句,同时,在k8s的command中如何来使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-23云原生周刊:利用 eBPF 增强 K8s
- 2024-12-20/kubernetes 1.32版本更新解读:新特性和变化一目了然
- 2024-12-19拒绝 Helm? 如何在 K8s 上部署 KRaft 模式 Kafka 集群?
- 2024-12-16云原生周刊:Kubernetes v1.32 正式发布
- 2024-12-13Kubernetes上运行Minecraft:打造开发者平台的例子
- 2024-12-12深入 Kubernetes 的健康奥秘:探针(Probe)究竟有多强?
- 2024-12-10运维实战:K8s 上的 Doris 高可用集群最佳实践
- 2024-12-022024年最好用的十大Kubernetes工具
- 2024-12-02OPA守门人:Kubernetes集群策略编写指南
- 2024-11-26云原生周刊:K8s 严重漏洞