﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-少年阿宾-随笔分类-shell</title><link>http://www.blogjava.net/stevenjohn/category/54674.html</link><description>那些青春的岁月</description><language>zh-cn</language><lastBuildDate>Tue, 13 Jan 2015 15:20:57 GMT</lastBuildDate><pubDate>Tue, 13 Jan 2015 15:20:57 GMT</pubDate><ttl>60</ttl><item><title>shell读文件的方法 </title><link>http://www.blogjava.net/stevenjohn/archive/2015/01/13/422202.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Tue, 13 Jan 2015 04:59:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2015/01/13/422202.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/422202.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2015/01/13/422202.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/422202.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/422202.html</trackback:ping><description><![CDATA[<p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;">读文件的方法：</p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;"><strong style="word-wrap: break-word;">第一步：</strong>&nbsp;将文件的内容通过管道（|）或重定向（&lt;）的方式传给while</p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;"><strong style="word-wrap: break-word;">第二步：&nbsp;</strong>while中调用read将文件内容一行一行的读出来，并付值给read后跟随的变量。变量中就保存了当前行中的内容。</p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;">例如读取文件/sites/linuxpig.com.txt</p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;"><strong style="word-wrap: break-word;">1）管道的方式：</strong><br style="word-wrap: break-word;" />&nbsp;<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; cat /sites/linuxpig.com.txt |while read LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; do<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo $LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; done</p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;">&nbsp;&nbsp; &nbsp;当然也可以将cat /sites/linuxpig.com.txt 写成一些复杂一些的，比如：<br style="word-wrap: break-word;" />&nbsp;&nbsp; &nbsp;<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;<strong style="word-wrap: break-word;">&nbsp;示例1：</strong><br style="word-wrap: break-word;" />&nbsp;&nbsp; &nbsp;find -type f -name "*.txt" -exec cat |while read LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; do<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo $LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; done<br style="word-wrap: break-word;" />&nbsp;&nbsp; &nbsp;可以将当前目录所有以 .txt 结尾的文件读出<br style="word-wrap: break-word;" />&nbsp;&nbsp; &nbsp;<br style="word-wrap: break-word;" />&nbsp;<strong style="word-wrap: break-word;">&nbsp; &nbsp;示例2：</strong><br style="word-wrap: break-word;" />&nbsp;&nbsp; &nbsp;grep -r "linuxpig.com" ./ | awk -F":" '{print $1}' | cat |while read LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; do<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo $LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; done</p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;">&nbsp;&nbsp; &nbsp;可以将含有 "linuxpig.com" 字符串的所有文件打开并读取。。</p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;">&nbsp;&nbsp; &nbsp;示例没有实际测试，如果使用请先测试。。。。。:-)<br style="word-wrap: break-word;" />&nbsp;&nbsp; &nbsp;</p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;"><strong style="word-wrap: break-word;">2）重定向的方式：</strong></p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;"><strong style="word-wrap: break-word;">&nbsp; 2.1 利用重定向符&lt;</strong></p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;">&nbsp;&nbsp;&nbsp;&nbsp; while read LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; do<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo $LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; done &lt; /sites/linuxpig.com.txt</p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;"><strong style="word-wrap: break-word;">&nbsp; 2.2 利用文件描述符（0~9）和重定向符 &lt;</strong></p><p style="word-wrap: break-word; margin-right: 0px; margin-left: 0px; padding: 0px; color: #666666; font-family: 宋体, Arial; font-size: 16px; line-height: 26px; background-color: #ffffff;">&nbsp;&nbsp;&nbsp;&nbsp; exec 3&lt;&amp;0<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; exec 0&lt;/sites/linuxpig.com.txt<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; while read LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; do<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo $LINE<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; done<br style="word-wrap: break-word;" />&nbsp;&nbsp;&nbsp;&nbsp; exec 0&lt;&amp;3</p><img src ="http://www.blogjava.net/stevenjohn/aggbug/422202.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2015-01-13 12:59 <a href="http://www.blogjava.net/stevenjohn/archive/2015/01/13/422202.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>shell 基本赋值</title><link>http://www.blogjava.net/stevenjohn/archive/2015/01/11/422169.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Sat, 10 Jan 2015 17:23:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2015/01/11/422169.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/422169.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2015/01/11/422169.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/422169.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/422169.html</trackback:ping><description><![CDATA[<div>1、把命令结果赋值给变量</div><div>#!/bash/bin</div><div>echo "1 2 3 4"|awk '{print $1}'</div><div>temp=`echo "1 2 3 4"|awk '{print $1}'`;</div><div>echo $temp;<br />2、<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /></div><img src ="http://www.blogjava.net/stevenjohn/aggbug/422169.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2015-01-11 01:23 <a href="http://www.blogjava.net/stevenjohn/archive/2015/01/11/422169.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>shell 编程——for in 循环</title><link>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422167.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Sat, 10 Jan 2015 14:06:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422167.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/422167.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422167.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/422167.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/422167.html</trackback:ping><description><![CDATA[<br />&nbsp;<wbr>&nbsp;<wbr> <span style="font-weight: bold">for in 格式</span><br /> <table style="width: 80%" cellspacing="1" cellpadding="3" border="1"> <tbody> <tr> <td>for <span style="font-style: italic">无$变量</span> in <span style="font-style: italic">字符串</span><br />do<br />&nbsp;<wbr> <span style="font-style: italic">$变量</span><br />done<br /></td></tr> <tr> <td style="vertical-align: top">一简单的字符串 枚举遍历法，利用for in格式对字符串<span style="font-weight: bold">按空格切份</span>的功能<br /><br />SERVICES="80&nbsp;<wbr>&nbsp;<wbr>  22&nbsp;<wbr>&nbsp;<wbr> 25&nbsp;<wbr>&nbsp;<wbr> 110&nbsp;<wbr>&nbsp;<wbr> 8000&nbsp;<wbr>&nbsp;<wbr> 23&nbsp;<wbr>&nbsp;<wbr>  20&nbsp;<wbr>&nbsp;<wbr> 21&nbsp;<wbr>&nbsp;<wbr> 3306&nbsp;<wbr>&nbsp;<wbr> "<br /><br />for&nbsp;<wbr>&nbsp;<wbr> <span style="font-weight: bold">x</span>&nbsp;<wbr>&nbsp;<wbr> in&nbsp;<wbr>&nbsp;<wbr>  $SERVICES&nbsp;<wbr>&nbsp;<wbr> &nbsp;<wbr><br />&nbsp;<wbr> do&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> &nbsp;<wbr><br />&nbsp;<wbr>  iptables&nbsp;<wbr>&nbsp;<wbr> -A&nbsp;<wbr>&nbsp;<wbr> INPUT&nbsp;<wbr>&nbsp;<wbr> -p&nbsp;<wbr>&nbsp;<wbr>  tcp&nbsp;<wbr>&nbsp;<wbr> --dport&nbsp;<wbr>&nbsp;<wbr> <span style="font-weight: bold">$x</span>&nbsp;<wbr>&nbsp;<wbr> -m&nbsp;<wbr>&nbsp;<wbr> state&nbsp;<wbr>&nbsp;<wbr>  --state&nbsp;<wbr>&nbsp;<wbr> NEW&nbsp;<wbr>&nbsp;<wbr> -j&nbsp;<wbr>&nbsp;<wbr> ACCEPT&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>  &nbsp;<wbr><br />&nbsp;<wbr>  done&nbsp;<wbr><br /></td></tr></tbody></table><br />&nbsp;<wbr>&nbsp;<wbr><br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>  <span style="font-weight: bold">for variable in values&nbsp;<wbr>&nbsp;<wbr>  --------字符串数组依次赋值</span><br /> <table style="width: 80%" cellspacing="1" cellpadding="3" border="1"> <tbody> <tr> <td>#!/bin/sh<br />for i in a b  c&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> 字符串列表A B  C&nbsp;<wbr><br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> 字符串用空格分隔,没有括号,没有逗号,  然后循环将其依次赋给变量i<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>  变量没有$<br />do<br />echo "i is <span style="font-weight: bold">$i</span>"<br />done&nbsp;<wbr>&nbsp;<wbr></td></tr> <tr> <td>[macg@machome ~]$ sh test.sh<br />i is a<br />i is b<br />i is  c<br /></td></tr></tbody></table><br /><br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> <span style="font-weight: bold">for in 里，变量和*不等价</span><br /> <table style="width: 80%" cellspacing="1" cellpadding="3" border="1"> <tbody> <tr> <td>#!/bin/bash<br /><br />for i in *.h ;<br />do<br />cat <span style="font-weight: bold">${i}.h</span><br />done&nbsp;<wbr>&nbsp;<wbr><br /></td></tr> <tr> <td>[macg@vm test]$ ./tip.sh<br />cat: <span style="font-weight: bold">*.h.h</span>: No such file or directory&nbsp;<wbr><br /><span style="font-weight: bold">$i代表的是整个路径，而不是*.h里的.h前面的部分</span><br /></td></tr></tbody></table>改正<br /> <table style="width: 80%" cellspacing="1" cellpadding="3" border="1"> <tbody> <tr> <td>#!/bin/bash<br /><br />for i in *.h<br />do<br />cat <span style="font-weight: bold">$i</span><br />done&nbsp;<wbr>&nbsp;<wbr><br /></td></tr> <tr> <td>[macg@vm test]$ echo hahaha &gt;&gt;1.h<br />[macg@vm test]$ echo ha  &gt;&gt;2.h<br /><br />[macg@vm test]$ ./tip.sh<br />hahaha<br />ha&nbsp;<wbr>&nbsp;<wbr>  &nbsp;<wbr><br /></td></tr></tbody></table>例2：<br /> <table style="width: 80%" cellspacing="1" cellpadding="3" border="1"> <tbody> <tr> <td>for i in /etc/profile.d/*.sh&nbsp;<wbr><br />&nbsp;<wbr>do<br />&nbsp;<wbr>  $i<br />done&nbsp;<wbr>&nbsp;<wbr><br /></td> <td>&nbsp;<wbr>$i代表的是/etc/profile.d/color.sh,<br />/etc/profile.d/alias.sh,  /etc/profile.d/default.sh</td></tr></tbody></table><br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>  &nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> <span style="font-weight: bold">for in  对(命令行，函数)参数遍历</span><br /> <table style="width: 80%" cellspacing="1" cellpadding="3" border="1"> <tbody> <tr> <td>test()<br />{<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> local  i<br /><br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> for i in $* ;  do<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>  echo "i is $i"<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>  done<br />}&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><br />$*是字符串：以"参数1 参数2 ... "  形式保存所有参数&nbsp;<wbr><br />$i是变量i的应用表示<br /></td></tr> <tr> <td>[macg@machome ~]$ sh test.sh p1 p2 p3 p4<br /><br />i is p1<br />i is p2<br />i is  p3<br />i is p4&nbsp;<wbr><br /></td></tr></tbody></table><br /><br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>  <span style="font-weight: bold">for  in语句与通配符*合用,批量处理文件</span><br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> 批量改文件名<br /> <table style="width: 100%" cellspacing="1" cellpadding="3" border="1"> <tbody> <tr> <td>[root@vm testtip]# ls<br />aaa.txt&nbsp;<wbr> ccc.txt&nbsp;<wbr> eee.txt&nbsp;<wbr>  ggg.txt&nbsp;<wbr> hhh.txt&nbsp;<wbr> jjj.txt&nbsp;<wbr> lll.txt&nbsp;<wbr> nnn.txt<br />bbb.txt&nbsp;<wbr>  ddd.txt&nbsp;<wbr> fff.txt&nbsp;<wbr> go.sh&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> iii.txt&nbsp;<wbr> kkk.txt&nbsp;<wbr>  mmm.txt&nbsp;<wbr> ooo.txt<br /></td></tr> <tr> <td>[root@vm testtip]# cat go.sh<br />for i in  *.txt&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>  *.txt相当于一个字符串数组，依次循环赋值给i<br />do<br />mv "$i"  "$i.bak"&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><br />done<br /></td></tr> <tr> <td>[root@vm testtip]# sh go.sh<br /><br />[root@vm testtip]#  ls<br />aaa.txt.bak&nbsp;<wbr> ccc.txt.bak&nbsp;<wbr> eee.txt.bak&nbsp;<wbr> ggg.txt.bak&nbsp;<wbr>  hhh.txt.bak&nbsp;<wbr> jjj.txt.bak&nbsp;<wbr> lll.txt.bak&nbsp;<wbr> nnn.txt.bak  bbb.txt.bak&nbsp;<wbr> ddd.txt.bak&nbsp;<wbr> fff.txt.bak&nbsp;<wbr>  go.sh&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> iii.txt.bak&nbsp;<wbr>  kkk.txt.bak&nbsp;<wbr> mmm.txt.bak&nbsp;<wbr>  ooo.txt.bak<br /></td></tr></tbody></table><br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> <span style="font-weight: bold">for in语句与` `和$( )合用，利用<span style="color: #ff0000">` `或$( )的将多行合为一行的缺陷</span>，实际是合为一个字符串数组</span><br /> <table style="width: 80%" cellspacing="1" cellpadding="3" border="1"> <tbody> <tr> <td>for i in <span style="font-weight: bold">$(ls  *.txt)</span>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> &nbsp;<wbr><br />do<br />echo  $i<br />done<br /></td></tr> <tr> <td>[macg@machome ~]$ sh  test<br />111-tmp.txt<br />111.txt<br />22.txt<br />33.txt<br /></td></tr></tbody></table><span style="font-weight: bold">或者说，利用for in克服` `和$( )  的多行合为一行的缺陷</span><br /><br /><br />&nbsp;<wbr><span style="font-weight: bold">&nbsp;<wbr> 利用for  in 自动对字符串按空格遍历的特性，对多个目录遍历</span><br /> <table style="width: 80%" cellspacing="1" cellpadding="3" border="1"> <tbody> <tr> <td>LIST="rootfs usr data data2"<br />&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr><br />for d in $LIST;  do&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> &nbsp;<wbr><br />&nbsp;<wbr> mount  /backup/$d<br />&nbsp;<wbr> rsync -ax --exclude fstab --delete /$d/  /backup/$d/<br />&nbsp;<wbr> umount /backup/$d<br />done&nbsp;<wbr>&nbsp;<wbr>  &nbsp;<wbr><br /></td></tr></tbody></table><br /><img src ="http://www.blogjava.net/stevenjohn/aggbug/422167.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2015-01-10 22:06 <a href="http://www.blogjava.net/stevenjohn/archive/2015/01/10/422167.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>shell mysql 查询</title><link>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422166.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Sat, 10 Jan 2015 14:04:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422166.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/422166.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422166.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/422166.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/422166.html</trackback:ping><description><![CDATA[1、<br /><div>#!/bin/bash</div><div>mysql -u* -h* -p* &lt;&lt;EOF</div><div>&nbsp; &nbsp; Your SQL script.</div><div>EOF</div>2、<span style="font-family: Tahoma, Helvetica, Arial, 宋体, sans-serif; line-height: 25px; background-color: #f7fcff;">准备一个sql脚本，如update.sql，然后执行如下命令：</span><br /><br /><div>mysql -uroot -ppassword &lt; update.sql</div>3、<br />mysql -Dftp -uroot -proot -e"select user FROM users" &gt;users.txt<br /> catfilename="users.txt"<br /><br /> for i in `cat $catfilename`;<br /> do<br /> &nbsp;&nbsp;<br /> &nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;echo "$i"<br /> &nbsp; &nbsp;<br /> done<br />4、<br /><div>echo "select user FROM ftp.users" | mysql -u root -proot</div><br />5、<span style="color: #555555; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">使用mysql参数的方法</span><br /><span style="color: #555555; font-family: 宋体, 'Arial Narrow', arial, serif; font-style: italic; line-height: 28px; background-color: #ffffff;">mysql -u$user -p$pass -D $db -e "select host from user;"</span><br />6、忽略mysql列名<br /><pre style="margin-top: 0px; margin-bottom: 0px; margin-left: 22px; white-space: pre-wrap; word-wrap: break-word; font-size: 12px; font-family: 'Courier New' !important;">  #!/bin/bash<br />    MYSQL=mysql #选用mysql程序<br />    USER=root   #设定用户名<br />    PASSWORD="123456" #设定数据库的用户密码<br />    DB=eucalyptus_auth #选定需要的数据库<br />   <br />    <span style="color: #0000ff; line-height: 1.5 !important;">COMMAND</span>="select auth_user_query_id, auth_user_secretkey from auth_users where auth_user_name=\"admin\" " #查找需要的数据sql语句<br />    declare count=`$MYSQL -u${USER} -p${PASSWORD} -D ${DB} -e "${COMMAND}" --skip-column-name` #执行mysql的查询，并将其记录到count中<br />    <span style="color: #0000ff; line-height: 1.5 !important;">for</span> list in $count                                                                                                      <br />    <span style="color: #0000ff; line-height: 1.5 !important;">do</span><br />    <span style="color: #0000ff; line-height: 1.5 !important;">echo</span> " the item is $list"<br />   done #读取得到的数据</pre>7、取出数据表里面的一行的第一列<br /><div></div><div>#!/bin/sh</div><div>HOST="192.168.111.11"</div><div>PORT="3306"</div><div>USERNAME="root"</div><div>PWD="root"</div><div>DBNAME="abin"</div><div>TNAME="city"</div><div></div><div></div><div>select_sql="select * from ${TNAME}"</div><div>mysql -h${HOST} -P${PORT} -u${USERNAME} -p${PWD} ${DBNAME} -e "set names utf8; ${select_sql}" --skip-column-name| while read line;</div><div>do</div><div>&nbsp; &nbsp; &nbsp; &nbsp; midd=`echo "$line" | awk '{print $1}'`;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; echo ${midd};</div><div>done;</div><div>~ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div>8、<br /><div>&nbsp;mysql&nbsp;database&nbsp;-u&nbsp;$user&nbsp;-p&nbsp;$password&nbsp;-e&nbsp;"SELECT&nbsp;A,&nbsp;B,&nbsp;C&nbsp;FROM&nbsp;table_a"|while&nbsp;read&nbsp;a&nbsp;b&nbsp;c<br />do<br />echo&nbsp;$a&nbsp;$b&nbsp;$c<br />don&nbsp;</div>9、<br /><div>&nbsp;exec&nbsp;8&lt;&gt;file<br />mysql&nbsp;database&nbsp;-u&nbsp;$user&nbsp;-p&nbsp;$password&nbsp;-e&nbsp;"SELECT&nbsp;A,&nbsp;B,&nbsp;C&nbsp;FROM&nbsp;table_a"<br />while&nbsp;read&nbsp;a&nbsp;b&nbsp;c<br />do<br />echo&nbsp;$a&nbsp;$b&nbsp;$c<br />done&lt;&amp;8&nbsp;</div><br />10、<br /><div>#!/bin/sh</div><div>HOST="localhost"</div><div>PORT="3306"</div><div>USERNAME="root"</div><div>PWD=""</div><div>DBNAME="abin"</div><div>CITYNAME="city"</div><div>BNAME="bussiness"</div><div>HNAME="height"</div><div></div><div>parameter=$1</div><div>type=$2</div><div>echo "parameter=${parameter},type=${type}"</div><div>select_sql="select * from ${CITYNAME} t where t.code='${parameter}'"</div><div>mysql -h${HOST} -P${PORT} -u${USERNAME} -p${PWD} ${DBNAME} -e "set names utf8; ${select_sql}" --skip-column-name| while read a b c;</div><div>do</div><div>&nbsp; &nbsp; &nbsp; &nbsp; id=${a};</div><div>&nbsp; &nbsp; &nbsp; &nbsp; echo "id=${id}"</div><div>&nbsp; &nbsp; &nbsp; &nbsp; if [ $type = 1 ];then</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo "type=${type},id=${id}"</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; bus_sql="select * from ${BNAME} t where t.ccode=${id}"</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mysql -h${HOST} -P${PORT} -u${USERNAME} -p${PWD} ${DBNAME} -e "set names utf8; ${bus_sql}" --skip-column-name | while read d e f g;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; do</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo "bussiness=${e},city_code=${g},bussiness_code=${f}"</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; done</div><div>&nbsp; &nbsp; &nbsp; &nbsp; elif [ $type = 2 ];then</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo "type=${type},id=${id}"</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; hei_sql="select * from ${HNAME} t where t.ccode=${id}"</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mysql -h${HOST} -P${PORT} -u${USERNAME} -p${PWD} ${DBNAME} -e "set names utf8; ${hei_sql}" --skip-column-name | while read h i j k;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; do</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo "sex=${i},height=${j},city_code=${k}"</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; done</div><div>&nbsp; &nbsp; &nbsp; &nbsp; else</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo "others"</div><div>&nbsp; &nbsp; &nbsp; &nbsp; fi;</div><div>done</div><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><img src ="http://www.blogjava.net/stevenjohn/aggbug/422166.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2015-01-10 22:04 <a href="http://www.blogjava.net/stevenjohn/archive/2015/01/10/422166.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>shell 脚本 遍历select的结果集怎么实现</title><link>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422165.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Sat, 10 Jan 2015 13:08:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422165.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/422165.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422165.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/422165.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/422165.html</trackback:ping><description><![CDATA[<h1><span style="color: #333333; font-family: arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; font-size: 14px; font-weight: normal; line-height: 24px; background-color: #f1fedd;">以 MySQL 为例</span><span style="color: #333333; font-family: arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; font-size: 14px; font-weight: normal; line-height: 24px; background-color: #f1fedd;">:<br /></span><code class="bash plain" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-weight: normal; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; background-color: #f5f5f5;">mysql&nbsp;-e&nbsp;</code><code class="bash string" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-weight: normal; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; color: #0000ff !important; background-image: none !important; background-color: #f5f5f5;">"select&nbsp;*&nbsp;from&nbsp;tbl"</code><span style="color: #333333; font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; font-size: 13px; font-weight: normal; line-height: 14.296875px; background-color: #f5f5f5;">&nbsp;</span><code class="bash plain" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-weight: normal; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; background-color: #f5f5f5;">|&nbsp;</code><code class="bash keyword" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; color: #ff7800 !important; background-image: none !important; background-color: #f5f5f5;">while</code><span style="color: #333333; font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; font-size: 13px; font-weight: normal; line-height: 14.296875px; background-color: #f5f5f5;">&nbsp;</span><code class="bash functions" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-weight: normal; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; color: #ff1493 !important; background-image: none !important; background-color: #f5f5f5;">read</code><span style="color: #333333; font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; font-size: 13px; font-weight: normal; line-height: 14.296875px; background-color: #f5f5f5;">&nbsp;</span><code class="bash plain" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-weight: normal; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; background-color: #f5f5f5;">line&nbsp;;&nbsp;</code><code class="bash keyword" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; color: #ff7800 !important; background-image: none !important; background-color: #f5f5f5;">do</code><span style="color: #333333; font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; font-size: 13px; font-weight: normal; line-height: 14.296875px; background-color: #f5f5f5;">&nbsp;</span><code class="bash functions" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-weight: normal; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; color: #ff1493 !important; background-image: none !important; background-color: #f5f5f5;">echo</code><span style="color: #333333; font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; font-size: 13px; font-weight: normal; line-height: 14.296875px; background-color: #f5f5f5;">&nbsp;</span><code class="bash string" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-weight: normal; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; color: #0000ff !important; background-image: none !important; background-color: #f5f5f5;">"$line"</code><span style="color: #333333; font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; font-size: 13px; font-weight: normal; line-height: 14.296875px; background-color: #f5f5f5;">&nbsp;</span><code class="bash plain" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-weight: normal; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; background-color: #f5f5f5;">;&nbsp;</code><code class="bash keyword" style="font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; line-height: 14.296875px; font-size: 13px; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; color: #ff7800 !important; background-image: none !important; background-color: #f5f5f5;">done</code><br /><span style="color: #333333; font-family: arial, 宋体, sans-serif, 'Microsoft YaHei', tahoma; font-size: 14px; font-weight: normal; line-height: 24px; background-color: #f1fedd;"><br /></span><br /></h1><img src ="http://www.blogjava.net/stevenjohn/aggbug/422165.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2015-01-10 21:08 <a href="http://www.blogjava.net/stevenjohn/archive/2015/01/10/422165.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>shell脚本读取mysql结果集的值</title><link>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422164.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Sat, 10 Jan 2015 13:06:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422164.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/422164.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422164.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/422164.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/422164.html</trackback:ping><description><![CDATA[<span style="font-family: Arial, 宋体; line-height: 24px; text-indent: 14px; background-color: #f7fcff;">在linux下用shell脚本读取mysql结果集中值的二种方法，按行读取sql结果，将sql执行结果读取到shell变量中，然后读取。<br /></span><table class="td_100 table99" cellspacing="0" cellpadding="0" style="font-size: 9pt; font-family: Tahoma, Verdana; color: #000000; border-collapse: collapse; width: 1115px; height: 712px; table-layout: fixed; word-break: break-all;"><tbody><tr valign="top"><td colspan="4" style="table-layout: fixed; font-size: 9pt; word-break: break-all; border-right-width: 0px; border-top-width: 0px; font-family: tahoma, fantasy; border-collapse: collapse;"><table class="table99 td140" cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: Tahoma, Verdana; color: #000000; border-collapse: collapse; width: 1103px;"><tbody><tr><td valign="top" style="table-layout: fixed; font-size: 14px; word-break: break-all; border-right-width: 0px; border-top-width: 0px; line-height: 1.6em; font-family: tahoma, fantasy; border-collapse: collapse;"><div class="topic_content" id="content1" style="letter-spacing: 1px; width: 1103px; line-height: 1.5em; word-wrap: break-word; word-break: break-all; overflow: auto; color: #333333;"></div></td></tr><tr><td class="td45" colspan="4" style="table-layout: fixed; font-size: 9pt; word-break: break-all; border-right-width: 0px; border-top-width: 0px; font-family: tahoma, fantasy; border-collapse: collapse;"><div class="divTitle"><h1 style="margin: 10px 0px; font-size: 18px; line-height: 30px;"><strong style="font-size: 14px;">shell脚本读取mysql结果集的值</strong></h1></div></td></tr><tr valign="top"><td colspan="4" style="table-layout: fixed; font-size: 9pt; word-break: break-all; border-right-width: 0px; border-top-width: 0px; font-family: tahoma, fantasy; border-collapse: collapse;"><table class="table99 td140" cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: Tahoma, Verdana; color: #000000; border-collapse: collapse; width: 1103px;"><tbody><tr><td valign="top" style="table-layout: fixed; font-size: 14px; word-break: break-all; border-right-width: 0px; border-top-width: 0px; line-height: 1.6em; font-family: tahoma, fantasy; border-collapse: collapse;"><div class="topic_content" id="content1" style="letter-spacing: 1px; width: 1103px; line-height: 1.5em; word-wrap: break-word; word-break: break-all; overflow: auto; color: #333333;"><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 6px 0px; width: 1103px; clear: both;">按行读取sql结果：</p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 6px 0px; width: 1103px; clear: both;"></p><div id="eng" style="padding: 5px 5px 5px 15px; margin: 10px; background-color: #ebeced; overflow: auto; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 13.9px; line-height: 1.6em; background-position: initial initial; background-repeat: initial initial;">while&nbsp;read&nbsp;-a&nbsp;row<p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;"></p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;">do</p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;">&nbsp;echo&nbsp;"..${row[0]}..${row[1]}..${row[2]}.."</p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;">done&nbsp;&lt;&nbsp;&lt;(echo&nbsp;"SELECT&nbsp;A,&nbsp;B,&nbsp;C&nbsp;FROM&nbsp;table_a"</p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;">&nbsp;mysql&nbsp;database&nbsp;-u&nbsp;$user&nbsp;-p&nbsp;$password)</p></div><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 6px 0px; width: 1103px; clear: both;"></p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 6px 0px; width: 1103px; clear: both;">将sql执行结果读取到shell变量中：</p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 6px 0px; width: 1103px; clear: both;"></p><div id="eng" style="padding: 5px 5px 5px 15px; margin: 10px; background-color: #ebeced; overflow: auto; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 13.9px; line-height: 1.6em; background-position: initial initial; background-repeat: initial initial;">while&nbsp;read&nbsp;a&nbsp;b&nbsp;c<p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;"></p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;">do</p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;">&nbsp;echo&nbsp;"..${a}..${b}..${c}.."</p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;">done&nbsp;&lt;&nbsp;&lt;(echo&nbsp;"SELECT&nbsp;A,&nbsp;B,&nbsp;C&nbsp;FROM&nbsp;table_a"</p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 0px; width: 1063px; clear: both;">&nbsp;mysql&nbsp;database&nbsp;-u&nbsp;$user&nbsp;-p&nbsp;$password)</p></div><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 6px 0px; width: 1103px; clear: both;"></p><p style="table-layout: fixed; word-break: break-all; line-height: 1.6em; margin: 6px 0px; width: 1103px; clear: both;"></p></div></td></tr></tbody></table><br /></td></tr></tbody></table></td></tr></tbody></table><span style="font-family: Arial, 宋体; line-height: 24px; text-indent: 14px; background-color: #f7fcff;"><br /><br /><br /></span><img src ="http://www.blogjava.net/stevenjohn/aggbug/422164.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2015-01-10 21:06 <a href="http://www.blogjava.net/stevenjohn/archive/2015/01/10/422164.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>mysql shell 乱码</title><link>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422163.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Sat, 10 Jan 2015 12:58:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422163.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/422163.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422163.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/422163.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/422163.html</trackback:ping><description><![CDATA[<span style="color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">经常要在shell下查询数据库的东西，数据库有中文，shell显示就是乱码，有几个方法看看结果</span><div style="margin: 0px; color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">首先linux中文字体要安装，这个自己装，数据库的字符集要支持中文，我的支持啊，然后就是在写shell的时候的问题了</div><div style="margin: 0px; color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">mysql -u root -p &nbsp;--default-character-set=utf8 db -e "select * from tb where A=10;"</div><div style="margin: 0px; color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">这个显示的就是乱码</div><div style="margin: 0px; color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">mysql -u root -p db -e "set names utf8 ;select * from tb where A=10;"</div><div style="margin: 0px; color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">这个还是乱码</div><div style="margin: 0px; color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">mysql -u root -p db -e "set names Latin1 ;select * from tb where A=10;"</div><div style="margin: 0px; color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">这个也是乱码</div><div style="margin: 0px; color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">mysql -u root -p db -e "set names gbk ;select * from tb where A=10;"</div><div style="margin: 0px; color: #2c2c2c; font-family: 宋体, 'Arial Narrow', arial, serif; line-height: 28px; background-color: #ffffff;">最后这个却显示中文了！！！！<br /><br /><br /><br /><br /><br /><div>http://wdegang.blog.51cto.com/134120/1137929</div></div><img src ="http://www.blogjava.net/stevenjohn/aggbug/422163.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2015-01-10 20:58 <a href="http://www.blogjava.net/stevenjohn/archive/2015/01/10/422163.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux if elif else fi</title><link>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422162.html</link><dc:creator>abin</dc:creator><author>abin</author><pubDate>Sat, 10 Jan 2015 11:19:00 GMT</pubDate><guid>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422162.html</guid><wfw:comment>http://www.blogjava.net/stevenjohn/comments/422162.html</wfw:comment><comments>http://www.blogjava.net/stevenjohn/archive/2015/01/10/422162.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/stevenjohn/comments/commentRss/422162.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/stevenjohn/services/trackbacks/422162.html</trackback:ping><description><![CDATA[1、接收linuxshell控制台输入的字符串参数：<br /><div>#!/bash/bin</div><div>parameter=$1</div><div>if [ $parameter = "a" ];then</div><div>&nbsp; &nbsp; &nbsp; &nbsp; echo "equals"</div><div>elif [ $parameter = "b" ];then</div><div>&nbsp; &nbsp; &nbsp; &nbsp; echo "not"</div><div>else</div><div>&nbsp; &nbsp; &nbsp; &nbsp; echo "kong"</div><div>fi<br /></div>2、接收linuxshell控制台输入的数字参数：<br /><div>#!/bash/bin</div><div>parameter=$1</div><div>if [ $parameter = 1 ];then</div><div>&nbsp; &nbsp; &nbsp; &nbsp; echo "input is $parameter"</div><div>elif [ $parameter = 2 ];then</div><div>&nbsp; &nbsp; &nbsp; &nbsp; echo "input is $parameter"</div><div>else</div><div>&nbsp; &nbsp; &nbsp; &nbsp; echo "input is other: $parameter"</div><div>fi</div><br /><br />3、接收linuxshell控制台输入的时间参数：<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><img src ="http://www.blogjava.net/stevenjohn/aggbug/422162.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/stevenjohn/" target="_blank">abin</a> 2015-01-10 19:19 <a href="http://www.blogjava.net/stevenjohn/archive/2015/01/10/422162.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>