UNIX & Linux 将字符串转换成命令执行

系统运维

本文适用于以下主题:

Unix & Linux convert string to command

UNIX & Linux 将字符串转换成命令执行

Linux sh脚本中怎样将字符串转化为命令

答案:

在shell脚本中使用eval命令(此命令是bash的内置命令,凡是bash的内置命令查看帮助时用man eval),而不是exec。

语法:

eval 参数

参数可以为一组命令的字符串,如“eval yum install dstat–y ”,如果不加参数直接执行eval也可以,返回错误代码依旧为0(成功执行),但没有意义。

为什么不用exec?

因为exec在执行一次后自动退出当前shell脚本,导致在exec后的所有行全部忽略。

为什么exec会自动退出?

exec不启动新的shell,而是用将后面所跟的命令替换当前的shell(当前运行的脚本或登录会话)的进程。

新网虚拟主机

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注