我这里有一个tftp脚本,当它运行时,它只是挂起,并将我带到一个空行(这告诉我它是挂起的)。我可以退出Ctrl+C的脚本...
#!/bin/bash
hostname=$1;
filename=$2;
tftp <</dev/null
mode binary
get $hostname:$filename
quit我还尝试在脚本的末尾添加EOF,但也不起作用。
这是我的命令行..。
$ ./tftpShell.sh host1 myFileName >/home/aayerd200/tftpoutput.txt 2>/home/aayerd200/tftperror.log因此,当我运行脚本时,它只会把我留在一个空行上。然而,它确实用get做了它应该做的工作,我确实得到了我想要的文件。
当然,为了安全起见,我在这里替换了host1和myFileName这两个实际字段。
如何停止此脚本?我相信它只是挂在$ ps -u aayerd200上的tftp,或者当由php $ ps -u守护进程运行时
发布于 2013-07-27 00:32:57
您将/dev/null作为这里的文档“分隔符”,尝试一些对shell没有任何意义的随机字符集,比如EOF。并终止此处单据
tftp <<-EOF
mode binary
get $hostname:$filename
quit
EOF发布于 2013-07-27 00:54:54
好的,我只是把&附加到命令的末尾,使其成为一个后台进程。然后我运行了$ echo $!用于PID。然后我运行了$ kill PID。
这就是我对此的解决方案,至少现在是这样。
https://stackoverflow.com/questions/17886409
复制相似问题