-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcontent.json
More file actions
1 lines (1 loc) · 45.8 KB
/
content.json
File metadata and controls
1 lines (1 loc) · 45.8 KB
1
{"meta":{"title":"BenDan","subtitle":null,"description":"我可以划船不用浆!我可以扬帆没有风向!因为我这一生!全靠浪!","author":"BenDan","url":"http://code.bendan.vip"},"pages":[{"title":"404 Not Found:该页无法显示","date":"2016-09-22T06:23:13.064Z","updated":"2016-08-25T06:04:41.940Z","comments":false,"path":"/404.html","permalink":"http://code.bendan.vip//404.html","excerpt":"","text":"没有找到您要访问的网页原因可能如下:可能网速过慢,或网络中断;可能页面已删除;这个页面太受欢迎了,太多人访问。 .article-header { padding: 0; padding-top: 10px; border-left: none; text-align: center; } .article-header:hover { border-left: none; } .article-title { font-size: 1.6em; }"},{"title":"关于","date":"2016-09-22T06:23:13.096Z","updated":"2016-08-28T14:34:47.992Z","comments":true,"path":"about/index.html","permalink":"http://code.bendan.vip/about/index.html","excerpt":"","text":"配图:遇见你是最美的意外 & 谭振辉 KiteRunner 那些出类拔萃的人正是生活的早期就清楚地辨明了自己的方向,并且始终如一地把他们的能力对准这一目标的人。 by 爱德华 · 布尔沃利顿 大家好,欢迎来到 BenDan 的博客!"},{"title":"书籍","date":"2016-09-22T06:23:13.127Z","updated":"2016-08-24T02:32:42.433Z","comments":true,"path":"book/index.html","permalink":"http://code.bendan.vip/book/index.html","excerpt":"","text":"BenDan 为大家推荐一些好的书籍作品"},{"title":"分类","date":"2016-09-22T06:23:13.443Z","updated":"2016-08-22T15:05:38.891Z","comments":true,"path":"categories/index.html","permalink":"http://code.bendan.vip/categories/index.html","excerpt":"","text":""},{"title":"邻居","date":"2016-09-22T06:23:14.895Z","updated":"2016-08-29T12:35:50.560Z","comments":true,"path":"links/index.html","permalink":"http://code.bendan.vip/links/index.html","excerpt":"","text":"以后友联就放到这里啦。Hexo 有些地方很蛋疼添加友联时编译经常出错,索性关闭了模板自带的友联功能,建立一个独立的友联界面,方便以后加更多的朋友! 下面是BanDan的邻居 猪先生: http://www.3gjn.com 全景宽: http://quanjingkuan.com NingBlog: https://python-ning.github.io 雾里看花: https://blog.ikke.moe 刘玉峰: https://blog.liuyufeng.tech LOSTYOU: http://lostyou.love 洋仔の博客: http://strwei.com"},{"title":"电影","date":"2016-09-22T06:23:14.927Z","updated":"2016-08-24T02:31:55.304Z","comments":true,"path":"movie/index.html","permalink":"http://code.bendan.vip/movie/index.html","excerpt":"","text":"BenDan 收藏的一些经典影视作品"},{"title":"标签","date":"2016-09-22T06:23:14.965Z","updated":"2016-08-24T03:39:00.138Z","comments":true,"path":"tags/index.html","permalink":"http://code.bendan.vip/tags/index.html","excerpt":"","text":""}],"posts":[{"title":"TYPECHO响应式主题 :Autumn 1.0 发布","slug":"TYPECHO响应式主题-Autumn-1-0-发布","date":"2016-09-28T11:37:05.000Z","updated":"2016-09-30T01:52:20.713Z","comments":true,"path":"2016/09/28/TYPECHO响应式主题-Autumn-1-0-发布/","link":"","permalink":"http://code.bendan.vip/2016/09/28/TYPECHO响应式主题-Autumn-1-0-发布/","excerpt":"这是一款仿自然智Typecho模板,历时2两个星期,终于发布了,模板还有很多地方需要完善,后期我也会一直更新,直到没有人用这套主题为止。","text":"这是一款仿自然智Typecho模板,历时2两个星期,终于发布了,模板还有很多地方需要完善,后期我也会一直更新,直到没有人用这套主题为止。 详情预览地址:http://www.3gjn.com最新下载地址:Autumn.zip 关于处女作主题命名为Autumn(秋天) 使用方法下载主题拷贝到 themes 模板目录,进入后台启用模板即可。 点赞和访问量开启文章浏览量和点赞功能需要安装插件 Like Views 插件打包下载:plugins.rar下载解压上传 plugins 插件目录,启用即可 顶部页面描述设置 新增页面会提示未“未设置”字样。如图所示,下面就交大家如何设置顶部页面描述 在新增页面底部如上图所示:1234//新增字段xbiaoti //字段名称 字段值:可以填需要展示的页面标题如:“足迹”xmiaoshu //字段名称 字段值:可以填需要展示的页面描述如:“我们走过的每一步都有无数跟随者,当我们走到最后,这些跟随着会继承理想,继续走下去。” 点击保存效果图如下:","categories":[{"name":"Typecho","slug":"Typecho","permalink":"http://code.bendan.vip/categories/Typecho/"}],"tags":[{"name":"Autumn","slug":"Autumn","permalink":"http://code.bendan.vip/tags/Autumn/"},{"name":"模板","slug":"模板","permalink":"http://code.bendan.vip/tags/模板/"},{"name":"Typecho","slug":"Typecho","permalink":"http://code.bendan.vip/tags/Typecho/"}],"keywords":[{"name":"Typecho","slug":"Typecho","permalink":"http://code.bendan.vip/categories/Typecho/"}]},{"title":"T-SQL经典语句","slug":"T-SQL经典语句","date":"2016-09-22T05:46:34.000Z","updated":"2016-09-22T06:15:35.034Z","comments":true,"path":"2016/09/22/T-SQL经典语句/","link":"","permalink":"http://code.bendan.vip/2016/09/22/T-SQL经典语句/","excerpt":"一、基础1、说明:创建数据库1CREATE DATABASE database-name 2、说明:删除数据库1drop database dbname 3、说明:备份sql server创建 备份数据的 device1234USE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\\mssql7backup\\MyNwind_1.dat'/*开始 备份*/BACKUP DATABASE pubs TO testBack","text":"一、基础1、说明:创建数据库1CREATE DATABASE database-name 2、说明:删除数据库1drop database dbname 3、说明:备份sql server创建 备份数据的 device1234USE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\\mssql7backup\\MyNwind_1.dat'/*开始 备份*/BACKUP DATABASE pubs TO testBack 4、说明:创建新表 1234create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表)B:create table tab_new as select col1,col2… from tab_old definition only 5、说明:删除新表 1drop table tabname 6、说明:增加一个列 1Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 7、说明:添加主键: 1Alter table tabname add primary key(col) 说明:删除主键:1Alter table tabname drop primary key(col) 8、说明:创建索引:1create [unique] index idxname on tabname(col….) 删除索引:1drop index idxname 注:索引是不可更改的,想更改必须删除重新建。 9、说明:创建视图:1create view viewname as select statement 删除视图:1drop view viewname 10、说明:几个简单的基本的sql语句1234567891011选择:select * from table1 where 范围插入:insert into table1(field1,field2) values(value1,value2)删除:delete from table1 where 范围更新:update table1 set field1=value1 where 范围查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!排序:select * from table1 order by field1,field2 [desc]总数:select count as totalcount from table1求和:select sum(field1) as sumvalue from table1平均:select avg(field1) as avgvalue from table1最大:select max(field1) as maxvalue from table1最小:select min(field1) as minvalue from table1 11、说明:几个高级查询运算词 A: UNION 运算符UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。 B: EXCEPT 运算符EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。 C: INTERSECT 运算符INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。注:使用运算词的几个查询结果行必须是一致的。 12、说明:使用外连接 A、left outer join:左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c B:right outer join:右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。 C:full outer join:全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。 二、提升1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用)12法一:select * into b from a where 1<>1法二:select top 0 * into b from a 2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用)1insert into b(a, b, c) select d,e,f from b; 3、说明:跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)12insert into b(a, b, c) select d,e,f from b in ‘具体数据库’ where 条件例子:..from b in '"&Server.MapPath(".")&"\\data.mdb" &"' where.. 4、说明:子查询(表名1:a 表名2:b)1select a,b,c from a where a IN (select d from b ) 或者: select a,b,c from a where a IN (1,2,3) 5、说明:显示文章、提交人和最后回复时间1select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b 6、说明:外连接查询(表名1:a 表名2:b)1select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c 7、说明:在线视图查询(表名1:a )1select * from (SELECT a,b,c FROM a) T where t.a > 1; 8、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括12select * from table1 where time between time1 and time2select a,b,c, from table1 where a not between 数值1 and 数值2 9、说明:in 的使用方法1select * from table1 where a [not] in (‘值1’,’值2’,’值4’,’值6’) 10、说明:两张关联表,删除主表中已经在副表中没有的信息 1delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 ) 11、说明:四表联查问题:1select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where ..... 12、说明:日程安排提前五分钟提醒 1SQL: select * from 日程安排 where datediff('minute',f开始时间,getdate())>5 13、说明:一条sql 语句搞定数据库分页1select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段 14、说明:前10条记录1select top 10 * form table1 where 范围 15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)1select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta.b) 16、说明:包括所有在 TableA 中但不在 TableB和TableC 中的行并消除所有重复行而派生出一个结果表1(select a from tableA ) except (select a from tableB) except (select a from tableC) 17、说明:随机取出10条数据1select top 10 * from tablename order by newid() 18、说明:随机选择记录1select newid() 19、说明:删除重复记录1Delete from tablename where id not in (select max(id) from tablename group by col1,col2,...) 20、说明:列出数据库里所有的表名1select name from sysobjects where type='U' 21、说明:列出表里的所有的1select name from syscolumns where id=object_id('TableName') 22、说明:列示type、vender、pcs字段,以type字段排列,case可以方便地实现多重选择,类似select 中的case。123456789select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end) FROM tablename group by type显示结果:type vender pcs电脑 A 1电脑 A 1光盘 B 2光盘 A 2手机 B 3手机 C 3 23、说明:初始化表table11TRUNCATE TABLE table1 24、说明:选择从10到15的记录1select top 5 * from (select top 15 * from table order by id asc) table_别名 order by id desc 三、技巧1、1=1,1=2的使用,在SQL语句组合时用的较多“where 1=1” 是表示选择全部 “where 1=2”全部不选,如:12345678910if @strWhere !='' beginset @strSQL = 'select count(*) as Total from [' + @tblName + '] where ' + @strWhere endelse beginset @strSQL = 'select count(*) as Total from [' + @tblName + ']' end我们可以直接写成set @strSQL = 'select count(*) as Total from [' + @tblName + '] where 1=1 安定 '+ @strWhere 2、收缩数据库123456--重建索引DBCC REINDEXDBCC INDEXDEFRAG--收缩数据和日志DBCC SHRINKDBDBCC SHRINKFILE 3、压缩数据库1dbcc shrinkdatabase(dbname) 4、转移数据库给新用户以已存在用户权限12exec sp_change_users_login 'update_one','newname','oldname'go 5、检查备份集1RESTORE VERIFYONLY from disk='E:\\dvbbs.bak' 6、修复数据库123456ALTER DATABASE [dvbbs] SET SINGLE_USERGODBCC CHECKDB('dvbbs',repair_allow_data_loss) WITH TABLOCKGOALTER DATABASE [dvbbs] SET MULTI_USERGO 7、日志清除NOCOUNT ON12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849DECLARE @LogicalFileName sysname, @MaxMinutes INT, @NewSize INTUSE tablename -- 要操作的数据库名SELECT @LogicalFileName = 'tablename_log', -- 日志文件名@MaxMinutes = 10, -- Limit on time allowed to wrap log. @NewSize = 1 -- 你想设定的日志文件的大小(M)-- Setup / initializeDECLARE @OriginalSize intSELECT @OriginalSize = size FROM sysfilesWHERE name = @LogicalFileNameSELECT 'Original Size of ' + db_name() + ' LOG is ' + CONVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' + CONVERT(VARCHAR(30),(@OriginalSize*8/1024)) + 'MB'FROM sysfilesWHERE name = @LogicalFileNameCREATE TABLE DummyTrans(DummyColumn char (8000) not null)DECLARE @Counter INT, @StartTime DATETIME, @TruncLog VARCHAR(255)SELECT @StartTime = GETDATE(), @TruncLog = 'BACKUP LOG ' + db_name() + ' WITH TRUNCATE_ONLY'DBCC SHRINKFILE (@LogicalFileName, @NewSize)EXEC (@TruncLog)-- Wrap the log if necessary.WHILE @MaxMinutes > DATEDIFF (mi, @StartTime, GETDATE()) -- time has not expired AND @OriginalSize = (SELECT size FROM sysfiles WHERE name = @LogicalFileName) AND (@OriginalSize * 8 /1024) > @NewSize BEGIN -- Outer loop. SELECT @Counter = 0 WHILE ((@Counter < @OriginalSize / 16) AND (@Counter < 50000)) BEGIN -- update INSERT DummyTrans VALUES ('Fill Log') DELETE DummyTrans SELECT @Counter = @Counter + 1 END EXEC (@TruncLog) END SELECT 'Final Size of ' + db_name() + ' LOG is ' + CONVERT(VARCHAR(30),size) + ' 8K pages or ' + CONVERT(VARCHAR(30),(size*8/1024)) + 'MB'FROM sysfiles WHERE name = @LogicalFileNameDROP TABLE DummyTransSET NOCOUNT OFF 8、说明:更改某个表1exec sp_changeobjectowner 'tablename','dbo' 9、存储更改全部表12345678910111213141516171819202122232425262728CREATE PROCEDURE dbo.User_ChangeObjectOwnerBatch@OldOwner as NVARCHAR(128),@NewOwner as NVARCHAR(128)ASDECLARE @Name as NVARCHAR(128)DECLARE @Owner as NVARCHAR(128)DECLARE @OwnerName as NVARCHAR(128)DECLARE curObject CURSOR FOR select 'Name' = name,'Owner' = user_name(uid)from sysobjectswhere user_name(uid)=@OldOwnerorder by nameOPEN curObjectFETCH NEXT FROM curObject INTO @Name, @OwnerWHILE(@@FETCH_STATUS=0)BEGIN if @Owner=@OldOwner beginset @OwnerName = @OldOwner + '.' + rtrim(@Name)exec sp_changeobjectowner @OwnerName, @NewOwnerend-- select @name,@NewOwner,@OldOwnerFETCH NEXT FROM curObject INTO @Name, @OwnerENDclose curObjectdeallocate curObjectGO 10、SQL SERVER中直接循环写入数据1234567declare @i intset @i=1while @i<30begin insert into test (userid) values(@i) set @i=@i+1end","categories":[{"name":"SQL SERVER","slug":"SQL-SERVER","permalink":"http://code.bendan.vip/categories/SQL-SERVER/"}],"tags":[{"name":"数据库","slug":"数据库","permalink":"http://code.bendan.vip/tags/数据库/"},{"name":"T-SQL","slug":"T-SQL","permalink":"http://code.bendan.vip/tags/T-SQL/"}],"keywords":[{"name":"SQL SERVER","slug":"SQL-SERVER","permalink":"http://code.bendan.vip/categories/SQL-SERVER/"}]},{"title":"SQL Server 2016正式版安装配置过程图文详解","slug":"SQL-Server-2016正式版安装配置过程图文详解","date":"2016-09-04T02:08:47.000Z","updated":"2016-09-04T02:33:19.537Z","comments":true,"path":"2016/09/04/SQL-Server-2016正式版安装配置过程图文详解/","link":"","permalink":"http://code.bendan.vip/2016/09/04/SQL-Server-2016正式版安装配置过程图文详解/","excerpt":"这篇文章主要为大家详细介绍了SQL Server2016正式版安装配置过程图文教程,感兴趣的小伙伴们可以参考一下 本文针对SQL 2016 正式版安装过程进行梳理总结,帮助大家顺利安装SQL 2016,具体内容如下","text":"这篇文章主要为大家详细介绍了SQL Server2016正式版安装配置过程图文教程,感兴趣的小伙伴们可以参考一下 本文针对SQL 2016 正式版安装过程进行梳理总结,帮助大家顺利安装SQL 2016,具体内容如下 1.点击全新安装 2.接着就是下一步,下一步… 3.选择你要安装的功能 可以利用PolyBase,使用标准TSQL查询hadoop数据,但这里我不需要装 4.设置排序规则 5.设置登录用户 6.临时数据库配置 SQL Server 2016:可以根据逻辑CPU数量来调整tempdb的数据文件数量 7.数据库安装完成后,点击安装管理工具 8.管理工具 要从官网去下载 https://msdn.microsoft.com/en-us/library/mt238290.aspx 9.下载后安装 10.安装完成 看看都安装了点什么","categories":[{"name":"SQL SERVER","slug":"SQL-SERVER","permalink":"http://code.bendan.vip/categories/SQL-SERVER/"}],"tags":[{"name":"SQL SERVER","slug":"SQL-SERVER","permalink":"http://code.bendan.vip/tags/SQL-SERVER/"},{"name":"数据库","slug":"数据库","permalink":"http://code.bendan.vip/tags/数据库/"}],"keywords":[{"name":"SQL SERVER","slug":"SQL-SERVER","permalink":"http://code.bendan.vip/categories/SQL-SERVER/"}]},{"title":"ASP.NET MVC5 入门教程(一)-概念","slug":"ASP-NET-MVC-5-入门-基础知识","date":"2016-08-29T01:23:10.000Z","updated":"2016-08-29T09:35:02.081Z","comments":true,"path":"2016/08/29/ASP-NET-MVC-5-入门-基础知识/","link":"","permalink":"http://code.bendan.vip/2016/08/29/ASP-NET-MVC-5-入门-基础知识/","excerpt":"1.1 ASP.NET MVC 简介ASP.NET MVC 是一种构建Web应用程序的框架,他将一般的MVC(Model - View -Controller)模式应用于ASP.NET框架。 MVC 模式简介 MVC 将应用程序的用户界面(User Interface,UI)分为三个主要部分: 模型(Model):一组类,描述了要处理的数据以及修改和操作数据的业务规则。 视图(View):定义应用程序用户界面的显示方式。 控制器(Controller):一组类,用于处理来自用户,整个应用程序流以及特定应用程序逻辑的通信。","text":"1.1 ASP.NET MVC 简介ASP.NET MVC 是一种构建Web应用程序的框架,他将一般的MVC(Model - View -Controller)模式应用于ASP.NET框架。 MVC 模式简介 MVC 将应用程序的用户界面(User Interface,UI)分为三个主要部分: 模型(Model):一组类,描述了要处理的数据以及修改和操作数据的业务规则。 视图(View):定义应用程序用户界面的显示方式。 控制器(Controller):一组类,用于处理来自用户,整个应用程序流以及特定应用程序逻辑的通信。 MVC在WEB框架中的应用 MVC模式经常应用于Web程序设计中,在ASP.NET MVC 中,MVC主要部分的定义大致如下: 模型(Model):模型是描述程序设计人员感兴趣问题域的一些类,这些类通常封装储存在数据库中的数据,以及操作这些数据和执行特定域业务逻辑代码。在ASP.NET MVC中 ,模型就像使用了某种工具的数据访问层(Data Access Layer),这种工具包括实体框架(Entity Framework)或者与包含特定域逻辑的自定义代码 组合在一起的NHibernate。 视图(View):一个动态生成HTML页面的模板。 控制器(Controller):一个协调视图和模型之间关系的特殊类。它响应用户输入,与模型进行对话,并决定呈现哪个视图(如果有的话)。在ASP.NET MVC中,这个类文件通常以后缀名Controller表示。 1.2 ASP.NET MVC 应用程序的结构用 Visual Studio 创建了一个新的ASP.NET MVC应用程序后,将自动向这个项目中添加一些文件和目录。如图所示,用 Internet Application 模板创建ASP.NET MVC项目后有8个顶级目录,如下图所示: 默认的顶级目录 目录 用途 /Controllers 该目录用于保存那些处理URL请求的Controller类 /Models 该目录用于保存那些表示和操纵数据以及业务对象的类 /Views 该目录用于保存那些负责呈现输出结果(如HTML)的UI模板文件 /Scripts 该目录用于保存JavaScript库文件和脚本(.js) /fonts 该目录用于保存Bootstrap模板系统包含的一些自定义 /Content 该目录用于保存CSS、图像和 其他站点内容,而非脚本 /App_Data 该目录用于储存想要读取/写入的数据文件 /App_Start 该目录用于保存一些功能的配置代码,如路由、捆绑和 Web API 1.3 ASP.NET MVC 和约定约定优于配置通过查看应用程序运行的三个核心目录,可以将ASP.NET MVC中看到这一概念: Controllers Models Views 没有必要再web.Confg文件中设置这些文件夹名称————它们约定在配置文件中。这样就避免了编辑XML文件(如:web.config)来显式地告诉MVC引擎”可以在Views目录中查找程序视图”————这些程序都已经知道了,这就是约定。 约定简化通信 编写代码进行通信主要面向两类不同听众: 需要将清晰的无二义性的指令传递给计算机,让它来执行。 需要让来发人员读懂你的代码,以便后期的维护、调试以及完善。","categories":[{"name":"ASP.NET","slug":"ASP-NET","permalink":"http://code.bendan.vip/categories/ASP-NET/"}],"tags":[{"name":"C#","slug":"C","permalink":"http://code.bendan.vip/tags/C/"},{"name":"MVC","slug":"MVC","permalink":"http://code.bendan.vip/tags/MVC/"}],"keywords":[{"name":"ASP.NET","slug":"ASP-NET","permalink":"http://code.bendan.vip/categories/ASP-NET/"}]},{"title":" Markdown语法介绍","slug":"Markdown语法介绍","date":"2016-08-24T06:06:29.000Z","updated":"2016-08-24T08:33:00.184Z","comments":true,"path":"2016/08/24/Markdown语法介绍/","link":"","permalink":"http://code.bendan.vip/2016/08/24/Markdown语法介绍/","excerpt":"什么是Markdown语法?Markdown 是一种轻量级标记语言,目标是实现「易读易写」,通过简单的标记语法,它可以使普通文本内容具有一定的格式。","text":"什么是Markdown语法?Markdown 是一种轻量级标记语言,目标是实现「易读易写」,通过简单的标记语法,它可以使普通文本内容具有一定的格式。 标题在Markdown中,你只需要在文本前面加上# 即可,同理、你还可以增加二级标题、三级标题、四级标题、五级标题和六级标题,总共六级,只需要增加# 即可,标题字号相应降低。例如: 123456# 一级标题## 二级标题### 三级标题#### 四级标题##### 五级标题###### 六级标题 效果图如下: 引用Markdown 标记区块引用是使用类似 email 中用 > 的引用方式,只需要在整个段落的第一行最前面加上 > : 1> 时光静好,与君语;细水流年,与君同。-- BenDan 效果图如下: 区块引用可以嵌套,只要根据层次加上不同数量的 > : 12345> 这是第一级引用。>> > 这是第二级引用。>> 现在回到第一级引用。 效果图如下: 引用的区块内也可以使用其他的 Markdown 语法,包括标题、列表、代码区块等: 12345678> ## 这是一个标题。>> 1. 这是第一行列表项。> 2. 这是第二行列表项。>> 给出一些例子代码:>> return shell_exec(\"echo $input | $markdown_script\"); 效果图如下: 列表列表项目标记通常放在最左边,项目标记后面要接一个字符的空格。 无序列表:使用星号、加号或是减号作为列表标记 123- Red- Green- Blue 效果图如下: 有序列表:使用数字接着一个英文句点 1231. Red2. Green3. Blue 效果图如下: 代码只要把你的代码块包裹在之间,你就不需要通过无休止的缩进来标记代码块了。 在围栏式代码块中,你可以指定一个可选的语言标识符,然后我们就可以为它启用语法着色了。 举个例子,这样可以为一段 Ruby 代码着色: 效果图如下: 123require 'redcarpet'markdown = Redcarpet.new(\"Hello World!\")puts markdown.to_html 强调在Markdown中,可以使用 * 和 _ 来表示斜体和加粗。 斜体:12**BenDan 遇见你,真美好!***BenDan 遇见你,真美好!* 效果如下 BenDan 遇见你,真美好!BenDan 遇见你,真美好! 自动链接方括号显示说明,圆括号内显示网址, Markdown 会自动把它转成链接,例如: 12[BenDan的博客](http://bendan.vip) 效果如下 BenDan的博客 或者也可以直接用< >,将网址或者邮箱地址放在中间,也能将地址直接转成链接: 12<admin@3gjn.com> 效果如下 admin@3gjn.com 表格 在 Markdown 中,可以制作表格,例如: 12345678910111213<table> <tr> <td>First Header</td> <td>Second Header</td> <td>Second Header</td> </tr> <tr> <td>Content Cell</td> <td>Content Cell</td> <td>Content Cell</td> </tr></table> 效果图如下: 小贴士:值得一提的是MarkDown 支持HTML语法。使用HTML我们可以实现很多小功能。 分割线在 Markdown 中,可以制作分割线,例如: 1--- 效果图如下: 图片Markdown 使用了类似链接的语法来插入图片, 包含两种形式: 内联 和 引用. 内联图片语法如下:1 或1 也就是: 一个感叹号: ! ; 紧跟一对方括号, 包含了可选填的图片 alt 属性; 紧跟一对圆括号, 包含了图片的 URL 或者路径, 以及一个可选的用单引号或双引号包裹的 title 属性. 引用图片语法如下:12345![Alt text][id]#“id” 是图片引用的名称. 图片引用使用链接定义的相同语法:[id]: url/to/image "Optional title attribute"","categories":[{"name":"HELP","slug":"HELP","permalink":"http://code.bendan.vip/categories/HELP/"}],"tags":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/tags/HEXO/"},{"name":"Markdown","slug":"Markdown","permalink":"http://code.bendan.vip/tags/Markdown/"}],"keywords":[{"name":"HELP","slug":"HELP","permalink":"http://code.bendan.vip/categories/HELP/"}]},{"title":"GitHub+Hexo配置系列教程-Hexo+GitHub关联-三","slug":"GitHub-Hexo配置系列教程-Hexo-GitHub关联-三","date":"2016-08-23T08:43:57.000Z","updated":"2016-08-24T00:53:26.121Z","comments":true,"path":"2016/08/23/GitHub-Hexo配置系列教程-Hexo-GitHub关联-三/","link":"","permalink":"http://code.bendan.vip/2016/08/23/GitHub-Hexo配置系列教程-Hexo-GitHub关联-三/","excerpt":"上一篇中我们介绍了如何配置GitHub端的具体操作,接下来,就是将Hexo与GitHub进行关联 在Hexo配置文件中关联GitHub账号 1.找到刚才所建的目录(F:\\Hexo下),编辑 _config.yml,拖到最下方,找到deploy标签,然后更为如下配置,注意:你自己在修改时,需要将 bentoule修改为自己的用户名 1234567deploy: type: git repository: git@github.com:bentoule/bentoule.github.io.git branch: master","text":"上一篇中我们介绍了如何配置GitHub端的具体操作,接下来,就是将Hexo与GitHub进行关联 在Hexo配置文件中关联GitHub账号 1.找到刚才所建的目录(F:\\Hexo下),编辑 _config.yml,拖到最下方,找到deploy标签,然后更为如下配置,注意:你自己在修改时,需要将 bentoule修改为自己的用户名 1234567deploy: type: git repository: git@github.com:bentoule/bentoule.github.io.git branch: master 2.注意: 因yml格式问题,所有键值对的”:”冒号后面必须跟有一个空格 3.注意: 自Hexo 3.0以后,type类型都为 git,而非 github 4.然后在F:/Hexo目录下,右键,选择Git Bash,输入以下命令即可完成部署和同步命令如下: 12$ hexo generate #或 hexo g $ hexo deploy #或 hexo d 5.到此我们的博客已经完全搭建并关联起来了,现在在浏览器中访问bentoule.github.io即可看到自己的成就.注意事项 每次在本地进行改动后,不管是什么改动,都需要在F:\\Hexo 文件夹下打开Git Bash,执行hexo g 如果需要同步到github中,则在执行完hexo g命令后,再次执行hexo d即可 在执行hexo d命令时,会让输入你的github邮箱和密码,在输入密码时为了安全考虑,输入字符时是不会显示的,请放心输入 有的电脑在执行hexo d命令时,会出现ERROR Deployer not found: github 的错误提示,该错误原因有以下几点 在_config.yml文件中,deploy模块中冒号后面没有加空格 将type类型写成了github,正确写法是git 在改文件夹下执行 npm install hexo-deployer-git –save 命令后重新执行 hexo d命令 将Git Bash命令关掉,重新打开执行 6.在github端设置完成后,有时候直接访问会出现404错误,这是正常的,一般等待十分钟左右就可以访问了,如果还不行,可能是你在注册账号的时候没有验证邮箱中的邮件. 7.如遇到其他不可解决的问题,可以尝试删除.deploy_git文件夹及db.json,再次重新生成即可 发布一篇文章 既然博客已经搭建完毕,现在肯定想跃跃欲试,发布一篇博客,所以我们需要更改一些默认设置,来将站点打造成真正属于自己的网站. 博客配置一般需要用到两个文件,一个是对全局进行配置的_config.yml文件,另一个是对主题进行配置的文件(暂时还没有设置,找到后后续补充) F:\\Hexo_config.yml 12345678910# Hexo Configuration ## Docs: https://hexo.io/docs/configuration.html ## Source: https://github.com/hexojs/hexo/# Site title: Test #网站名称 subtitle: Test #副标题,在titile下方可看到 description: des #描述,可自定义 author: au #作者,可以在左下角看到 language: zh-CN #中文 timezone: PRC #时区 People's Republic of China,中华人民共和国 现在可以执行hexo g和hexo d命令来查看更改的效果了. 发布文章 1.在F:\\Hexo下打开Git Bash命令,执行hexo n “This my first blog” 2.创建成功后,就可以在F:\\Hexo\\source_posts中看到该md文件,在这里,可以使用MarkdownPad 2 或者 记事本 打开,然后进行自定义更改 1234 title: This my first blog #这里是正文,可以更改date: 2016-03-21 22:58:49 #时间戳,一般不改tags: Test #分类标签 --- #下面是正文,可以使用Markdown语法进行书写 3.然后执行hexo g和hexo d命令,即可在github上查看效果 小贴士:当然,你也可以执行hexo g和hexo s命令在本地打开localhost:4000进行本地访问,然后在同步到GitHub上.","categories":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/categories/HEXO/"}],"tags":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/tags/HEXO/"},{"name":"HEXO配置","slug":"HEXO配置","permalink":"http://code.bendan.vip/tags/HEXO配置/"},{"name":"Github","slug":"Github","permalink":"http://code.bendan.vip/tags/Github/"}],"keywords":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/categories/HEXO/"}]},{"title":"GitHub+Hexo配置系列教程-GitHub配置(二)","slug":"GitHub-Hexo配置系列教程-GitHub配置-二","date":"2016-08-23T02:41:06.000Z","updated":"2016-08-23T08:36:17.494Z","comments":true,"path":"2016/08/23/GitHub-Hexo配置系列教程-GitHub配置-二/","link":"","permalink":"http://code.bendan.vip/2016/08/23/GitHub-Hexo配置系列教程-GitHub配置-二/","excerpt":"上一篇中我们介绍了如何搭建Hexo本地博客,现在我们开始配置GitHub并进行关联Hexo GitHub端操作注册GitHub 在此处进行注册,操作比较简单,再次就不多做赘述,不熟悉的百度查看一下教程. 创建Repository 在自己GitHub主页点击右上角,创建Repository","text":"上一篇中我们介绍了如何搭建Hexo本地博客,现在我们开始配置GitHub并进行关联Hexo GitHub端操作注册GitHub 在此处进行注册,操作比较简单,再次就不多做赘述,不熟悉的百度查看一下教程. 创建Repository 在自己GitHub主页点击右上角,创建Repository 进入创建界面后,注意:名字一定要与用户名一致, 比如我的用户名是 bentoule,创建的Respository一定要是bentoule.github.io 然后点击Create repository按钮,然后进入到该respository界面,点击右边Settings, 拉到最下方,找到GitHub Pages模块,点击 Launch automatic page generator,让GitHub生成GitHubPager 然后进入下一页,点击页面右下角绿色框按钮 Continue to layouts进入下一页 下一个界面是选择主题,但选择哪个无所谓,因为后面将要与Hexo关联,站点所有内容都将被Hexo博客所替换,所以直接点击 Publish page 然后,就可以进入到该界面,即代表设置完成,访问bentoule.github.io即可看到自己独立的该域名网站. 此时点击Settings进入即可看到如下提示:Your sit is published at http://bentoule.github.io 配置SSH KeysSSH密钥是一个用来识别值得信赖的电脑在进行GitHub一些操作时,不用输入密码。用户可以生成一个SSH密钥,并按照本节所述的方法将公共密钥添加到你的GitHub帐户。 我们建议你定期检查SSH密钥列表,并删除任何一个长时间没有使用的秘钥. 小贴士:如果你安装的有GitHub的桌面版 ,你可以用它来克隆库而不是进行SSH密钥处理。它还配备了Git的Bash的工具,这是在Windows上运行的git命令的首选方式。检测电脑中是否已有SSH 秘钥 在你生成SSH秘钥之前,如果你有任意一个SSH秘钥,你都要检测一下; 检测步骤: 在任意目录右键,选择 Git Bash 输入 ls -al ~/.ssh 命令查看是否存在SSH秘钥 12ls -al ~/.ssh # Lists the files in your .ssh directory, if they exist 如果你看到有公共的SSH秘钥已经存在的话,请检测SSH列表的路径; 默认情况下,公共秘钥的文件名是下列之一: id_dsa.pub id_ecdsa.pub id_ecdsa.pub id_ecdsa.pub 如果没有一个现有的公共和私有密钥,或者不希望使用任何可用的SSH秘钥来连接到GitHub上,请生成一个新的SSH密钥。 如果你看到列出现有的公共和私有密钥(例如id_rsa.pub和id_rsa ),你想使用连接到GitHub上,你可以将你的SSH密钥放到ssh-agent(下面会写到) . 小贴士:如果你看到的〜/ .ssh不存在或者错误,不要担心!我们将创建它,并生成一个新的SSH密钥 生成新的SSH密钥并将其添加到ssh-agent中 在任意目录右键,选择Git Bash 输入ssh-keygen -t rsa -b 4096 -C “your_email@example.com” (将邮箱替换为你自己的地址) 123$ ssh-keygen -t rsa -b 4096 -C \"your_email@example.com\"# Creates a new ssh key, using the provided email as a label#Generating public/private rsa key pair. 当你提示“输入要保存密钥的文件”,然后按Enter键。接受默认文件位置。Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter] 在提示符下,键入一个安全密码(可以为空)。有关详细信息,请参阅“使用SSH密钥口令”一节。Enter passphrase (empty for no passphrase): [Type a passphrase]Enter same passphrase again: [Type passphrase again] 将ssh秘钥添加到 ssh-agent,在任意目录右键,选择Git Bash后输入命令确保ssh-agent的启用 123# start the ssh-agent in the background$ eval \"$(ssh-agent -s)\"# Agent pid 59566 添加你的SSH密钥到ssh-agent 。如果你使用现有的SSH密钥,而不是生成新的SSH密钥,你需要替换现有的私有密钥文件的名称,以取代id_rsa的命令 1$ ssh-add ~/.ssh/id_rsa 添加新的SSH密钥到你的帐户GitHub中 要配置GitHub的帐户需要使用新的(或现有的) SSH密钥,你还需要将其添加到你的帐户GitHub中。 复制SSH密钥到剪贴板 小贴士:如果你的SSH密钥文件具有与示例代码不同的名称,请修改文件名,以符合当前的设置。当复制你的秘钥时,不添加任何新行或空格。 12$ clip < ~/.ssh/id_rsa.pub# Copies the contents of the id_rsa.pub file to your clipboard 小贴士:如果clip命令没有执行,你可以找到隐藏的.ssh文件夹中,打开你喜欢的文本编辑器文件,并将其复制到剪贴板,一般是在C:\\Users\\yourname.ssh文件夹下的id_rsa.pub文件中,使用文本文档打开后复制内容即可 在GitHub任何界面中,点击右上角个人资料照片,选择Settings 在用户设置栏中,点击SSH AND GPG keys 然后点击 New SSH key 在“Title”字段中,为新的密钥添加描述性标签。例如,如果您使用的是个人的Mac ,您可以调用这个关键的“个人的MacBook Air ” 。 粘贴刚才复制的秘钥值到“key”框中。 然后点击Add SSH key 确认操作,然后输入你的GitHub密码。 测试SSH秘钥是否添加成功 小贴士:当你测试你的连接,你需要使用你的密码,这是你先前创建的SSH密钥密码来验证这个动作。有关使用SSH密钥口令的详细信息,请参阅”使用SSH密钥口令”一节。 在任意位置右键,打开Git Bash 输入以下命令ssh -T git@github.com 12$ ssh -T git@github.com# Attempts to ssh to GitHub 你可能会看到这些警告之一: The authenticity of host ‘github.com (192.30.252.1)’ can’t be established.RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48. Are you sure you want to continue connecting (yes/no)? The authenticity of host ‘github.com (192.30.252.1)’ can’t be established.RSA key fingerprint is nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.Are you sure you want to continue connecting (yes/no)? 小贴士:上面的例子列出了GitHub的IP地址为192.30.252.1 。当侦测GitHub上,你可能会看到一个IP地址范围。有关更多信息,请参阅“不GitHub上使用什么IP地址,我应该列入白名单? ” 验证你看到消息中的指纹相匹配的以下信息,然后输入 yes Hi username! You’ve successfully authenticated, but GitHub does notprovide shell access. 小贴士:验证结果消息中包含的用户名。如果你看到一个包含“access denied “的错误,请参阅:”权限被拒绝文档” 如果你从HTTPS切换到SSH,你需要更新远程存储库的URL。 ok,如果以上都完成了,那我们GitHub端的工作已经完成,接下来,就是Hexo+GitHub的关联配置","categories":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/categories/HEXO/"}],"tags":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/tags/HEXO/"},{"name":"HEXO配置","slug":"HEXO配置","permalink":"http://code.bendan.vip/tags/HEXO配置/"},{"name":"Github","slug":"Github","permalink":"http://code.bendan.vip/tags/Github/"}],"keywords":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/categories/HEXO/"}]},{"title":"GitHub+Hexo 配置系列教程 -HEXO配置 (一)","slug":"GitHub-Hexo-配置系列教程-HEXO配置-(一)","date":"2016-08-21T00:13:13.000Z","updated":"2016-08-23T02:11:41.204Z","comments":true,"path":"2016/08/21/GitHub-Hexo-配置系列教程-HEXO配置-(一)/","link":"","permalink":"http://code.bendan.vip/2016/08/21/GitHub-Hexo-配置系列教程-HEXO配置-(一)/","excerpt":"什么是HexoHexo是一个快速、简洁且高效的博客框架,可以方便的生成静态网页托管在github和Heroku上。作者是来自台湾的@tommy351。引用@tommy351的话,Hexo:","text":"什么是HexoHexo是一个快速、简洁且高效的博客框架,可以方便的生成静态网页托管在github和Heroku上。作者是来自台湾的@tommy351。引用@tommy351的话,Hexo: 快速、简单且功能强大的 Node.js 博客框架。 A fast, simple & powerful blog framework, powered by Node.js. 类似于jekyll、Octopress、Wordpress,我们可以用hexo创建自己的博客,托管到github或Heroku上,绑定自己的域名,用markdown写文章。本博客即使用hexo创建并托管在github上。 为什么要用Hexo来写博客引用原作者的话来说: 超快速度: Node.js 所带来的超快生成速度,让上百个页面在几秒内瞬间完成渲染。 支持 Markdown: Hexo 支持 GitHub Flavored Markdown 的所有功能,甚至可以整合 Octopress 的大多数插件。 一键部署: 只需一条指令即可部署到 GitHub Pages, Heroku 或其他网站。 丰富的插件: Hexo 拥有强大的插件系统,安装插件可以让 Hexo 支持 Jade, CoffeeScript。 另外,还有几个优点另Hexo这么风靡: 易用. 部署的话,就算是小白,也很简单, 而且平时用到的命令仅需要 hexo new hexo server hexo generate hexo deploy四个命令即可,不像Jekyll需要很多繁琐的git命令,而且目前命令已经可以缩写成hexo n hexo d hexo s hexo g了,更加简单好记易用 轻便. 文件少,小,易理解,方便自定义更改 用户多. 用户的量级虽然比不上Jekyll,但遇到什么问题基本在网上搜索出来就能搞定了. 使用Hexo需要花多大的成本 这是一个免费的开源的博客框架,任何人都可以修改和使用 Hexo的使用需要使用到GitHub,Git,MardDown,Node.js这几种工具,另外部分插件,主题,widget需要自己安装,设置.所以使用Hexo相对有一些计算机基础的人比较简单, 但是即使是小白,只要按照这个教程,也可以很快的入手. 注意本博客所用Hexo版本为3.2.0,部分文件或与其他版本不同.本教程只针对Windows版本, Hexo博客搭建安装Git推荐大家使用:msysgit https://git-for-windows.github.io/下载并安装Git即可完成. 安装Node.jswindows环境下的Node.js的安装很简单,只需要下载客户端一路next就行了,我选择的是v6.4.0LTS版本64位的 查看Node.js是否安装完成,在win+r中输入cmd命令窗口弹出后,输入node -v查看node版本 1node -v 安装Hexo (需要注意)利用命令行安装hexo Node.js安装完成后,在电脑任意位置,右键,选择 GitBash ,执行npm命令 1npm install -g hexo 创建本地hexo文件夹(地址名字可自定义) 安装完成后,在本地选择一个目标文件夹(如:F:\\Hexo),注意:在F:\\Hexo文件夹内右键,选择GitBush,执行以下指令,Hexo就会自动在目标文件夹下创建建立网站所需要的文件,一分钟左右会执行完成1hexo init 效果如下: 安装依赖包,该命令执行后没有什么提示,完成后的本地文件夹列表为图示,可能会有所不同1hexo install 初始化完成后目录图: 注意:因Hexo 3.0以后把服务器独立成了单独的模块,所以还需要安装hexo-server才可以使用,执行命令1npm install hexo-server –save 本地校验查看 到目前为止,我们已经搭建起本地的hexo博客了,执行以下命令(在F:\\Hexo)中,然后根据提示到浏览器中进行访问,地址为 localhost:4000 1hexo g 或者 hexo generate 1hexo server 或者 hexo s 图示为: 如果访问成功,即代表了本地博客配置成功,但有以下几点需要注意 每次想访问本地博客,至少需要执行hexo s命令,这样才相当于服务启动,然后才可访问 有的电脑4000端口可能被占用,导致每次访问localhost:4000提示一直找不到网页,这时就需要修改端口号,执行命令 hexo s -p 5000 即代表使用-p将端口号改为了5000,访问网址为localhost:5000 成功图示 : 按下Ctrl+C即可停止服务 如果进行到这一步,本地博客已经成功搭建起来了,当然只能在本地开启服务的时候才能访问,别人是看不到的,下面我们就要部署到GitHub上面,将Hexo与GitHub进行关联起来;","categories":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/categories/HEXO/"}],"tags":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/tags/HEXO/"},{"name":"HEXO配置","slug":"HEXO配置","permalink":"http://code.bendan.vip/tags/HEXO配置/"},{"name":"node.js","slug":"node-js","permalink":"http://code.bendan.vip/tags/node-js/"},{"name":"GIT","slug":"GIT","permalink":"http://code.bendan.vip/tags/GIT/"},{"name":"Github","slug":"Github","permalink":"http://code.bendan.vip/tags/Github/"}],"keywords":[{"name":"HEXO","slug":"HEXO","permalink":"http://code.bendan.vip/categories/HEXO/"}]},{"title":"Hello World","slug":"hello-world","date":"2016-08-20T00:13:13.000Z","updated":"2016-08-23T01:03:49.259Z","comments":true,"path":"2016/08/20/hello-world/","link":"","permalink":"http://code.bendan.vip/2016/08/20/hello-world/","excerpt":"Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.","text":"Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick StartCreate a new post1$ hexo new \"My New Post\" More info: Writing Run server1$ hexo server More info: Server Generate static files1$ hexo generate More info: Generating Deploy to remote sites1$ hexo deploy More info: Deployment","categories":[],"tags":[],"keywords":[]}]}