我想传递一个命令并打印出答案。 我试过这个
#!/bin/sh
cmd = `ps -ef|grep processname`
echo "$cmd"
但我收到的错误是
: command not found 4: cmd
此命令的输出可能是5行或6行。 我只想查看它们。
答案 0 :(得分:0)
删除等号符号两侧的额外空格。
cmd=`ps -ef|grep processname`
答案 1 :(得分:0)
尝试切换到bash,而不是sh
cmd="$(ps -ef|grep apache)"
echo "$cmd"
产量
bob@cindy:~$ echo "$cmd"
root 1914 1 0 Sep08 ? 00:01:37 /usr/sbin/apache2 -k start
www-data 1990 1 0 Sep08 ? 00:01:09 /usr/bin/htcacheclean -d 120 -p /var/cache/apache2/mod_cache_disk -l 300M -n
bob 13511 13509 0 08:18 pts/0 00:00:00 grep apache
www-data 29841 1914 0 00:08 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 29842 1914 0 00:08 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 29843 1914 0 00:08 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 29844 1914 0 00:08 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 29845 1914 0 00:08 ? 00:00:00 /usr/sbin/apache2 -k start