![将输出放入 SQL 表中](https://linux22.com/image/77118/%E5%B0%86%E8%BE%93%E5%87%BA%E6%94%BE%E5%85%A5%20SQL%20%E8%A1%A8%E4%B8%AD.png)
我正在尝试转换输出
ps awux
分成 11 个字段并删除标题,然后将该输出导入到 SQL 中的现有表中。
答案1
for line in $(ps auwx | sed -e 's/\ \+/\",\"/g'); do
echo "insert into tbl_name values(\"$line\")";
done | mysql
答案2
您可以删除第一行sed 1d
您可以使用以下命令创建值列表
sql=$(
echo "$line" | sed "
s/'/''/g
s/[[:space:]]\+/','/ # 1
s/[[:space:]]\+/','/ # 2
s/[[:space:]]\+/','/ # 3
s/[[:space:]]\+/','/ # 4
s/[[:space:]]\+/','/ # 5
s/[[:space:]]\+/','/ # 6
s/[[:space:]]\+/','/ # 7
s/[[:space:]]\+/','/ # 8
s/[[:space:]]\+/','/ # 9
s/[[:space:]]\+/','/ # 10
s/^/INSERT INTO table_name VALUES ('/
s/$/');/
"
)