我对下面的代码片段有疑问:
#!/bin/bash
GREEN="\033[01;32m"
RESTORE="\033[0m"
VALTIME=$(date '+%F %T')
PROCID=$(pgrep -u root *procname*)
RUNTIME=$(ps -p $PROCID -o,etime=) **<=== This is the problem line**
我让它在命令行上运行,但不知何故把它放入我的 shell 脚本中却出了问题。我在运行 2016 年 12 月版 Raspbian Lite 的 Raspberry Pi Model B 上收到以下错误:
$ ps [options]
error: garbage option
Usage:
ps [options]
Try 'ps --help <simple|list|output|threads|misc|all>'
or 'ps --help <s|l|o|t|m|a>'
for additional help text.
For more details see ps(1).
谁能帮我指出错误吗?我想我已经尝试了所有可以想象到的引号“'”、勾号“`”、双引号“”'的组合,但就是无法克服这个错误。我怀疑“-p”选项是罪魁祸首。
我正在尝试将进程运行时间以 hh:mm:ss 格式显示在控制台上,作为我的 CumulusMX 气象站的内务脚本的一部分。
答案1
对我来说,我得到了improper format list
。我相信这就是您正在寻找的,尽管您必须修剪$RUNTIME
:
#!/bin/bash
GREEN="\033[01;32m"
RESTORE="\033[0m"
VALTIME=$(date '+%F %T')
PROCID=$(pgrep -u root dhcpcd)
RUNTIME=$(ps -p $PROCID -o etime=)
echo
ing$RUNTIME
给出如下内容:
ELAPSED
26:50