当前位置: 首页 > 面试题库 >

start-stop-daemon引用的参数被误解

熊哲圣
2023-03-14
问题内容

我一直在尝试使用start-stop-
daemon制作一个初始化脚本。我陷入了守护进程的争论。我想将它们保留在脚本顶部的变量中,但是我无法获得引用来正确过滤掉。

我将在这里使用ls,这样我们就不必研究大多数人不知道或不在意的二进制文件和参数了。

我正在寻找的最终结果是开始-停止…运行 ls -la“ / folder with space /”

DAEMON=/usr/bin/ls 
DAEMON_OPTS='-la "/folder with space/"'

start-stop-daemon --start --make-pidfile --pidfile $PID --exec $DAEMON -- $DAEMON_OPTS

两次转义选项并尝试使用无数种不同的引号都无济于事……然后它们最终出现在守护程序中,它们总是被弄乱了。将 $ DAEMON_OPTS
括在引号中会更改内容…然后将它们视为自引号以来的内容…绝对不是正确的数字:)

回显命令行(开始-停止…)可在屏幕上正确打印内容。但是守护程序(真正的守护程序,不是ls)抱怨参数数量错误。

如何指定变量,以便将其中的引号正确地带到守护程序中?


问题答案:

我以为我会发布在我的工作初始化脚本中使用的最终报价:

COMMAND="/path/to/script -opt param param2 param3"
DAEMON_OPTS=" 0.0.0.0:$PORT -dest $OUTPUT_DIRECTORY -command"

start-stop-daemon --start --background --make-pidfile --pidfile $PID --exec $DAEMON -- $DAEMON_OPTS "\"$COMMAND\""

显然这是一个不完整且不起作用的示例,但我希望您能理解其中的要点。内线对的双引号是有效的。



 类似资料:
  • 问题内容: 什么是启动停止守护程序,应如何使用? 我正在尝试自动运行特定程序。每当系统启动时,程序都应运行。为此,我在位置编写脚本。 问题答案: 它是一个程序,用于管理系统级后台进程(守护程序)的启动和停止。通过为要启动的进程传递参数(例如,用于创建/检查的pid文件)和命令参数来使用它。 然后,您执行以下两项操作之一: 如果尚未运行,请启动。如果它正在运行,则什么也不做。 停下来。如果没有运行,

  • start 用法 Usage: docker start [OPTIONS] CONTAINER [CONTAINER...] Start one or more stopped containers -a, --attach=false Attach STDOUT/STDERR and forward signals --help=false Pr

  • 描述 (Description) 方法randrange()从范围(start,stop,step)返回一个随机选择的元素。 语法 (Syntax) 以下是randrange()方法的语法 - randrange ([start,] stop [,step]) Note - 此函数不能直接访问,因此我们需要导入随机模块,然后我们需要使用随机静态对象调用此函数。 参数 (Parameters) s

  • 本文向大家介绍MySQL Daemon failed to start错误解决办法,包括了MySQL Daemon failed to start错误解决办法的使用技巧和注意事项,需要的朋友参考一下 MySQL Daemon failed to start错误解决办法 前两天我们发现发布好的网站不可以进行注册,登陆这些活动,但是访问页面是正常的。于是开始对问题进行排查,首先我们重启了jenkins

  • 本文向大家介绍Linux下创建nginx脚本-start、stop、reload…,包括了Linux下创建nginx脚本-start、stop、reload…的使用技巧和注意事项,需要的朋友参考一下 1、关闭nginx 利用ps -aux | grep nginx 查看nginx是否启动 如果启动了就kill杀死 2、创建/etc/init.d/nginx文件 3、添加权限并启动 注:/etc/i

  • 许多编程语言中调用函数的两种方法是按值调用(call—by-value)和按引用调用(call—by—referrence)。参数按值调用传递时,生成参数值副本并传给被调用函数。副本的改变并不影响调用者的原始变量值,这样就可以防止意外的副作用影响开发正确、可靠的软件系统。本章前面的程序中 每个传递的参数都是按值调用传递的。 性能提示3.10 接值调用传递的一个缺点是,如果传递较大的数据项目,则复制