【发布时间】:2016-04-29 18:51:19
【问题描述】:
我想发出一个在我当前的 shell 中可用的命令(我正在运行我的 bash 脚本)。就像现在一样,如果我将 uecap 命令按原样放在我的 bash 脚本中。脚本失败,原因是找不到 uecap 命令。
虽然如果我直接从我当前的 shell 发出 uecap 命令,它工作正常。
我当前的 shell 在一个单独的进程上,它是自己的进程 ID。
以我的 bash shell 为例:
#!/bin/sh
while read i
do
cid=`echo "$i" | cut -b1`
rid=`echo "$i" | cut -b9-18`
rm -rf $1_TEMP
uecap -r rid -c cid
done < $1ID.log
我运行 bash 脚本的方式是发出以下命令:
!./bashscript $node.
同样,有没有办法使用 bash 脚本中的另一个进程运行命令?
【问题讨论】:
-
什么是
uecap,它位于何处? -
它驻留在另一个进程中。它是与另一个 shell 进程相关的特殊命令。我从那个 shell 运行 bash 脚本。不确定这是否会解决歧义,但可以将其视为 telnet 进入路由器,然后从那里运行 bash 脚本。我可以运行 bash 脚本(驻留在服务器中),但我不确定如何在我的 bash 脚本中使用 telnet 命令。
-
如果您想以其他用户身份运行命令,您可以使用sudo
-
嗨,bansi 希望这能澄清我想要做什么
-
是的,uecap 命令是一个别名。