使用shell脚本将数据插入MYSQL表

时间:2013-12-16 11:13:09

标签: mysql shell unix awk

我是shell脚本的初学者。我试图在MySQL表中存储LINUX命令的输出。我需要在列中选择分区详细信息,并在另一列中使用%。我几乎做到了,但我把输出放在一个列中。在表测试中,磁盘是一个列,使用的是另一列。我想要的输出是

**DISK**            **USED**

filesystem            45%

但我的实际输出就像

**DISK  USED**

filesystem  
45%

我的代码:

df -h | tee /home/abcd/test/monitor.text;
details=$(awk '{ print $1 } ' monitor.text);
echo $details;
used=$(awk '{ print $5}' monitor.text);
echo $used;
mysql test<<EOF;
INSERT INTO test_1 (details,used) VALUES ('$details','$used');
EOF

请给我正确的输出代码。
提前谢谢。

1 个答案:

答案 0 :(得分:0)

这是一个捕获这两列精确值的脚本你可以进行插入吗?

#!/bin/sh
df -h | awk '{ print$1 " "  $5} ' > monitor.txt
exec<monitor.txt
value=0
while read line
  do
     col1=`echo $line | cut -f1 -d " " `
     col2=`echo $line | cut -f2 -d " " `
     echo $col1
     echo $col2 ;
 done

将插入语句插入do-done循环中。