LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1034|回复: 7

求一个命令

[复制链接]
发表于 2008-12-29 02:16:37 | 显示全部楼层 |阅读模式
有一个文件,pid
里面只有一行记录,这个记录是某个进程的id号
如cat pid输出如下
1111

现在要  使用一个命令 kill -9 (pid文件中的进程号),
要写成一个命令如何搞?
 楼主| 发表于 2008-12-29 02:39:31 | 显示全部楼层
已经写了一个脚本,可以读出进程号,但是不能杀死进程?

脚本为:
PIDNUM= cat pid
echo ${PIDNUM}
kill -9 ${PIDNUM} (这样写没错吧?)

运行输出如下:
[root@/etc/opt/ss5]#./stop
9595

kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]  (怎么出错了呢?)
回复 支持 反对

使用道具 举报

发表于 2008-12-29 13:21:18 | 显示全部楼层
是不是要进行数据转换啊。
cat导出的数据是字符型的,kill的参数是int型的。
我没试过,你自己试试看吧。
回复 支持 反对

使用道具 举报

发表于 2008-12-29 13:43:35 | 显示全部楼层

你的脚本不对。好好学习一下Shell吧

Post by think365;1931206
已经写了一个脚本,可以读出进程号,但是不能杀死进程?

脚本为:
PIDNUM= cat pid
echo ${PIDNUM}
kill -9 ${PIDNUM} (这样写没错吧?)

运行输出如下:
[root@/etc/opt/ss5]#./stop
9595

kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]  (怎么出错了呢?)
  1. PIDNUM="$(cat pid)"
  2. echo ${PIDNUM}
  3. kill -9 ${PIDNUM}
复制代码
回复 支持 反对

使用道具 举报

发表于 2008-12-29 23:20:07 | 显示全部楼层
Post by hstking;1931365
cat导出的数据是字符型的,kill的参数是int型的。

想像力特别好...:yun:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-30 12:05:56 | 显示全部楼层
Post by tomgrean;1931377

  1. PIDNUM="$(cat pid)"
复制代码

为什么要特别写成这样?
回复 支持 反对

使用道具 举报

发表于 2008-12-30 17:33:45 | 显示全部楼层
这就是传说中的命令替换,最好用双引号引用起来,这样即使文件中前几个字符是空格(跳格、换行),也没问题了。
回复 支持 反对

使用道具 举报

发表于 2009-1-4 08:27:47 | 显示全部楼层
受益匪浅啊!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表