免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2671 | 回复: 7

帮忙看一下这个怎么转义呢? [复制链接]

论坛徽章:
0
发表于 2011-06-20 16:35 |显示全部楼层
##!/bin/bash
LANG=C
export LANG
year_name=`date +%G`
Directory_Name=`date +%m`
File_Name=`date +%Y-%m-%d-%H:%M:%S`

if [ ! -d "$year_name" ];
        then
        mkdir "$year_name"
        cd "$year_name"
        mkdir "$Directory_Name"
        echo "This directory already exists"
        #df -k > "$year_name/$Directory_Name/$File_Name".log
        exit 0
fi
df -k > "$year_name/$Directory_Name/$File_Name".log
        su - oracle -c "export ORACLE_SID=ORACLE;sqlplus /nolog <<!
                connect /as sysdba
                select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;
                select a.tablespace_name,total,free,total-free used from (select tablespace_name,sum(bytes)/1024/1024 total from dba_data_files group by tablespace_name)a,(select tablespace_name,sum(bytes)/1024/1024 free from dba_free_space group by tablespace_name)b where a.tablespace_name=b.tablespace_name;
                select * from v$resource_limit;                quit
                !" >> "$year_name/$Directory_Name/$File_Name".log
                sleep 5

        ftp -in 192.168.0.44 << !
        user root root123
        bin
        lcd "$year_name/$Directory_Name/"
        cd /var/www/html/checkdisk/"$year_name/$Directory_Name"
        put $File_Name.log
        bye
        !

帮忙看看带颜色的那句话应该怎么转义呢?"" '' `` \用过了,不知道是不会用还是写法有问题。没有成功。

论坛徽章:
1
巳蛇
日期:2013-10-28 15:55:33
发表于 2011-06-20 19:20 |显示全部楼层
select \* from v\$resource_limit;

论坛徽章:
0
发表于 2011-06-20 20:03 |显示全部楼层
在一个文件里面是没有解决,不知道楼上的办法是否可行,我明天试一下给你反馈。我写了一SQL文本解决这问题。

论坛徽章:
0
发表于 2011-06-20 20:08 |显示全部楼层
2楼,好像还是不行。我我测试过了。

SQL*Plus: Release 10.2.0.1.0 - Production on Mon Jun 20 20:05:55 2011

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

SQL> Connected.
SQL>            select \* from v
                       *
ERROR at line 1:
ORA-00911: invalid character

论坛徽章:
1
巳蛇
日期:2013-10-28 15:55:33
发表于 2011-06-20 20:23 |显示全部楼层
那么*不转义试试.

我还没学sql呢.

论坛徽章:
1
巳蛇
日期:2013-10-28 15:55:33
发表于 2011-06-20 20:27 |显示全部楼层
select * from v$resource_limit;
需要sql文件中显示成什么样子的?
$resource_limit保持原状还是被解释?
保持原状可以往前面多加些\, 自己测试下把.

论坛徽章:
0
发表于 2011-06-21 08:38 |显示全部楼层
select * from v$resource_limit;
我只希望select * from v$resource_limit;被SQL执行而不被shell解析。

论坛徽章:
0
发表于 2011-06-21 08:43 |显示全部楼层
6楼
select * from \,v$resource_limit;
不知道是不是你的意思,如果是那是失败的。
SQL> Connected.
SQL>                 select * from \,v
                              *
ERROR at line 1:
ORA-00911: invalid character
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会

【架构革新 高效可控】2020年12月21日-23日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP