ITPub博客

首页 > 应用开发 > IT综合 > 在shell中读入文件,如果取消''反斜杠的转义

在shell中读入文件,如果取消''反斜杠的转义

原创 IT综合 作者:Steven1981 时间:2010-08-17 10:41:55 0 删除 编辑

cat $SQLFILE | while read -r LINE

-r Backslash does not act as an escape character. The backslash is considered to be part of the
line. In particular, a backslash-newline pair may not be used as a line continuation.

[@more@]


我们来看一下效果:(注意read后面的-r)

[root@im_ctuallot2 dmp-heyf]# cat del_on_db1111.sql
delete from ctulog.db_allot where id='cntaobao[;'[]';
delete from ctulog.db_allot where id='cntaobaogirl's kiss';
delete from ctulog.db_allot where id='cntaobaosxzcdfwehjkil'';
delete from ctulog.db_allot where id='cntaobao江阴的许文强'';

[root@im_ctuallot2 dmp-heyf]# cat debug.sh
#!/bin/bash
DBID=1111
SQLFILE=del_on_db${DBID}.sql
cat $SQLFILE | while read LINE
do
echo -e "$LINE"
done

[root@im_ctuallot2 dmp-heyf]# sh debug.sh
delete from ctulog.db_allot where id='cntaobao[;'[]';
delete from ctulog.db_allot where id='cntaobaogirl's kiss';
delete from ctulog.db_allot where id='cntaobaosxzcdfwehjkil'';
delete from ctulog.db_allot where id='cntaobao江阴的许文强'';


[root@im_ctuallot2 dmp-heyf]# cat debug.sh
#!/bin/bash
DBID=1111
SQLFILE=del_on_db${DBID}.sql
cat $SQLFILE | while read -r LINE
do
echo -e "$LINE"
done
[root@im_ctuallot2 dmp-heyf]# sh debug.sh
delete from ctulog.db_allot where id='cntaobao[;'[]';
delete from ctulog.db_allot where id='cntaobaogirl's kiss';
delete from ctulog.db_allot where id='cntaobaosxzcdfwehjkil'';
delete from ctulog.db_allot where id='cntaobao江阴的许文强'';

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/703656/viewspace-1036950/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    127
  • 访问量
    855000