首页 文章 新番
动漫 学习 生活 日记 书籍 服务器 Bing
  • Linux find regex

    Linux的`find`命令真是非常强大的命令。以前都是用通配符的,但是最近有些东西通配符已经不能解决了,所以用到了正则表达式,但是发现每次使用的时候都找不到文件:```bashfind./-regex'acgist\.log.*'```![findregex](https://static.acgist.com/resources/images/article/201510/14461740884631001.png)这是为什么了,机智的我总能发现问题,我们使用`find`命令的时候会发现找到的文件名都是**./文件名**的格式的,所以应该这样写:```bashfind./-regex'\.\/acgist\.log.*'```![findregex](https://static.acgist.com/resources/images/article/201510/14461741989921002.png)当然上面还有一种`.*acgist\.log.*`的也可以。

    2015年10月30日 Linux find regex 正则表达式
  • MySQL INTO OUTFILE和LOAD DATA INFILE

    有时候为了方便拿到数据,会使用一些工具来转移数据,但是这样非常慢,使用MySQL自带的工具效率会高很多。下面就给一个文件来转移数据的例子,当然数据很多可以使用`mysqldump`命令更快。```sqlselectid,name,infofromxx_memberwherecreate_date>'2015-10-01'INTOOUTFILE"/data.txt"FIELDSTERMINATEDBY','LINESTERMINATEDBY'\n';```然后load到数据库:```sqlLOADDATAINFILE'E://company/data.txt'INTOTABLExx_memberFIELDSTERMINATEDBY','LINESTERMINATEDBY'\n'(id,name,info);```>这里要注意的就是后面`load`到数据库的时候,列的位置不是跟在表后面,而是放在最后面的。

    2015年10月20日 INTO OUTFILE LOAD DATA INFILE MySQL
  • xargs带有空格名称解决办法

    我们一般使用`find`和`xargs`两个命令完成一些功能,但是今天发现如果包含有空格的文件却会提示:```未匹配的单引用;默认情况下,引用是针对xargs的,除非您使用了-0选项```直接上解决办法:原命令:```bashfind/home/test/-name"*.text"-mtime+2|xargsls-lh```修改为:```bashfind/home/test/-name"*.text"-mtime+2-print0|xargs-0ls-lh```>参考文章:[http://blog.chinaunix.net/uid-7242899-id-2060739.html](http://blog.chinaunix.net/uid-7242899-id-2060739.html)

    2015年10月16日 xargs
  • UEditor表格无边框

    最近改用UEditor,一连串悲催的故事就发生了。今天就遇到了表格无边框的问题。当然百度有很多解决办法,但是我用的这个版本好像都没用,因为这个SB玩意把边框样式写到了CSS里面。![UEditor](https://static.acgist.com/resources/images/article/201510/14442925236891013.png)解决办法两个:1.直接把样式写到前台CSS里面2.改JS咯,搜索`c.push('20220623批注现在改成了Markdown写文章了,感觉富文本编辑器里面的标签比较乱,Markdown生成HTML比较好控制。

    2015年10月08日 UEditor
  • Grunt编译UEditor

    最近把公司网站的编辑器换了一下,原来的有点渣,换用百度的`UEditor`,但是发现百度官网的下载包有BUG(预览图片的时候路径是本地路径)。我还在想这么严重的问题百度居然不修复,原来百度早已经把源代码放到了`github`上面去了。下载源代码发现根本不是那么回事情,不得不说现在的前端也是折腾的厉害啊,什么自动化测试、编译,还要学习([http://www.gruntjs.net/](http://www.gruntjs.net/))。*首先从github上面下载代码下来*然后安装node.js*然后安装grunt插件*最后编译就OK了具体命令:```javascriptnode--versionnpminstall-ggrunt-clinpminstallgrunt--save-devnpminstallgrunt```>参考文章:[http://www.cnblogs.com/linjiqin/p/3754771.html](http://www.cnblogs.com/linjiqin/p/3754771.html)结果如下图:![Grunt编译UEditor](https://static.ac...

    2015年09月29日 Grunt UEditor Node.js
  • Chrome Workspace修改本地CSS

    前端一般都喜欢使用Chrome的控制台来修改CSS,这样可以马上看到效果,但是改了需要再修改CSS文件,这样非常麻烦。其实Chrome提供了一个非常不错的功能,修改样式的同时帮你把本地文件也修改稿了,简直不要太帅,下面给出设置方法:##打开控制台点击设置![Chrome控制台](https://static.acgist.com/resources/images/article/201509/14425424766751001.png)##选中Workspace![选中Workspace](https://static.acgist.com/resources/images/article/201509/14425424772641002.png)##选择你的Workspace目录![选择你的Workspace目录](https://static.acgist.com/resources/images/article/201509/14425426786511007.png)##设置folder的属性设置映射文件,可以映射本地文件,也可以映射`http://xxxx`文件,但是目录的层级要一样。![映射文件]...

    2015年09月18日 Chrome Workspace
  • 中文分词

    下面是一个中文分词算法,只有片段,完整例子请在后面下载完整代码:```javapackagecom.acgist.nlp.query.analyzer;importjava.util.ArrayList;importjava.util.List;importorg.apache.commons.lang.StringUtils;/***分词器*注意词典必须有序排放*/publicclassAnalyzer{privatechar[]chars;//字符串分割privateintindex=0;//分词序号privateintmatchIndex=0;//已经匹配的长度privateStringcontent;//原始句子privatebooleanmaximize;//是否最大分词privateListtokens;//分解出来的词语publicstaticfinalStringREGEX_BLANK="\\s";publicstaticfinalStringREGEX_NUMBER="[0-9]";publicstaticfinalStringREGEX_LETTER="[a-zA-Z]";publicst...

    2015年09月17日 中文分词
  • StringBuffer小细节

    以前每次说到使用`StringBuffer`来拼接字符串,但是当使用`toString`的方法时要小心。例如下面的代码:```javapublicstaticvoidmain(String[]args){StringBufferbuffer=newStringBuffer();longbegin=System.currentTimeMillis();for(inti=0;i<1000*10000;i++){if(buffer.toString().equals("bb")){}}longend=System.currentTimeMillis();System.out.println(end-begin);begin=System.currentTimeMillis();Stringvalue=buffer.toString();for(inti=0;i<1000*10000;i++){if(value.equals("bb")){}}end=System.currentTimeMillis();System.out.println(end-begin);}```如果每次比较的时候都去调用`toS...

    2015年09月17日 StringBuffer
  • Spring MVC匹配多个value

    最近搞SEO得优化,以前的一些链接优化,本来想用Nginx重写,但是想了想还是新站,还是改代码算了。需求是同时匹配:`icon|graph|ppt|image|font|soft`本来想的是:`@RequestMapping(value={"icon","graph","ppt","image","font","soft"})`,但是这样取不到值,还要自己写取值的方法。最后百度一下,原来还可以使用正则表达式:```java@RequestMapping(value="/{type:icon|graph|ppt|image|font|soft}")```>参考文章:[http://my.oschina.net/guhai2004/blog/170133](http://my.oschina.net/guhai2004/blog/170133)

    2015年09月17日 Spring MVC @RequestMapping @PathVariable
  • lucene多个field查询

    一般使用`lucene`查询可能都是下面这样:```javakeyword=QueryParser.escape(keyword);QueryParserqueryParser=newQueryParser(field,newAnalyzer());IndexSearchersearch=newIndexSearcher(indexReader);TopDocstopDocs=search.search(queryParser.parse(keyword),size);if(topDocs!=null){for(inti=0;i<topDocs.scoreDocs.length;i++){docs.add(search.doc(topDocs.scoreDocs[i].doc));}}```如果多列查询怎么办?如下:```javaintlength=fields.length;BooleanClause.Occur[]occurs=newBooleanClause.Occur[length];//对应列关键词的情况for(inti=0;i<length;i++){occurs[i]=Boolean...

    2015年09月16日 lucene MultiFieldQueryParser
  • lucene转义

    ```org.apache.lucene.queryparser.classic.ParseException:Cannotparse'?':'*'or'?'notallowedasfirstcharacterinWildcardQueryatorg.apache.lucene.queryparser.classic.QueryParserBase.parse(QueryParserBase.java:125)atorg.apache.lucene.queryparser.classic.MultiFieldQueryParser.parse(MultiFieldQueryParser.java:307)atcom.acgist.module.search.utils.IndexReaderUtils.searchIndex(IndexReaderUtils.java:66)atcom.acgist.module.search.utils.SearchUtils.search(SearchUtils.java:16)atcom.acgist.controller.SearchController.index(...

    2015年09月16日 lucene
  • lucene自定义分词器

    小黄书的分词很久就写好了,但是怎么结合`lucene`呢?首先要实现一个`Analyzer`的抽象类:```javapublicclassNLPAnalyzerextendsAnalyzer{@OverrideprotectedTokenStreamComponentscreateComponents(Stringfield){returnnewTokenStreamComponents(newNLPTokenizer());}}```代码非常简单,主要就是`NLPTokenizer`这个东西非常重要的,里面就是实现分词的代码:```javapublicclassNLPTokenizerextendsTokenizer{@OverridepublicbooleanincrementToken()throwsIOException{//内置input获取文本内容“你喜欢吃苹果吗?”clearAttributes();//清空CharTermAttributeterm=addAttribute(CharTermAttribute.class);term.append("分词");returntrue;}}```&...

    2015年09月16日 lucene 分词器
  • 手机浏览器拉起微信和支付宝

    手机其他浏览器支付时如何拉起微信和支付宝呢?微信:[weixin://wxpay/bizpayurl?pr=3yrtD05](weixin://wxpay/bizpayurl?pr=3yrtD05)其实部分`APP`有自己的`schame`,例如支付宝是`alipays://`。包括PC微信也可以通过`weixin://`打开。

    2015年09月11日 微信 支付宝
  • Java版MongoDB驱动Bson小技巧

    我这里使用的驱动是`3.0.1`,API地址:[http://mongodb.github.io/mongo-java-driver/](http://mongodb.github.io/mongo-java-driver/)Bson主要就是做一些`CURD`的条件,如下图:![CRUD](https://static.acgist.com//resources/images/article/201509/14417682356531007.png)其实非常简单的,主要使用到的一个工具类`Filters`,一看名字就是知道是一个过滤的工具。里面的方法都是静态的,而且都是查询条件使用到的:![Filters](https://static.acgist.com//resources/images/article/201509/14417683049371008.png)至于都是什么意思我就不多解释了。还有排序用的Sorts:![Sorts](https://static.acgist.com//resources/images/article/201509/14417686469351009.png)

    2015年09月09日 Java MongoDB Bson Filters Sorts
  • JSON重复key值

    JSON如果一个对象包含了两个`key`值一样,那么会发生什么呢?例如:```json{"name":"喻胜","name":"逗比"}```这个解析的结果获取到的`name`值为`逗比`。

    2015年09月07日 JSON
  • CSS图片固定百分比宽度等分文本

    做了个固定图片百分比宽的,然后右侧有一些列表等分的例子:[http://www.acgist.com/demo/image-text/index.html](http://www.acgist.com/demo/image-text/index.html)主要用到的就是`position:absolute;`这个属性,设置了这个属性的元素就可以获取到父元素的高度,然后就可以使用百分比来调整里面元素的高度了。

    2015年09月02日 CSS 图片文本
  • Bootstrap和modal.js制作确认框confirm

    使用`Bootstrap`和`modal.js`制作一个确认框的示例:```javascript$("#confirm").modal({"show":false});$(".btn-delete").click(function(){var$this=$(this);//注意,后面传递的参数不能是$(this);resumeConfirm("删除后该内容将不可恢复,确认删除吗?",function(){$this.addClass("disabled").attr("disabled","disabled");alert("确定删除!");},function(){alert("取消删除!");});});functionresumeConfirm(content,success,cancel){if(!content)content="删除后该内容将不可恢复,确认删除吗?";$("#confirmContent").text(content);$("#confirm").modal("show");$("#confirmSuccess").click(function(){if(success){succ...

    2015年09月02日 Bootstrap modal.js confirm
  • Linux zip追加文件

    要向一个zip里面添加一个文件,之前想用代码写的,但是都用了Linux,直接用命令来岂不是更帅?使用命令`zip-mzip.zipzip.txt`压缩,但是文件被删除了,那怎么才能把文件添加到压缩包,而文件又不被删除呢?找了半天没发现原来直接使用`zipzip.zipzip.txt`就可以了...更多压缩命令:[http://linuxnote.blog.51cto.com/9876511/1635830](http://linuxnote.blog.51cto.com/9876511/1635830)顺便写了两个批量添加文件到压缩包的脚本:##find```bash#!/bin/shzip_add_file(){forfilenamein`find$1-name*.zip`doif[-f"$filename"];thenecho"压缩$filename"zip"$filename"./t.txtfidone}zip_add_file./test```##ls```bash#!/bin/shzip_add_file(){forfilenamein`ls-A$1`doif[-d"$1/$filename"];t...

    2015年08月28日 Linux zip
  • JS拖拽div问题

    这里不是来讲拖拽实现的,这里主要讲另外一个小问题,因为之前有一个功能写了下面一段JS:```javascript$(document).mousemove(function(){//...});```看是不起眼的一段代码,却和拖拽的代码冲突了,导致拖动的时候`div`不能跟随鼠标。不过幸好哥阅码无数,分分钟想到了这是一个冒泡的问题,于是乎:```javascript$(document).mousemove(function(e){//...returnfalse;});```拖拽具体实现参考:[http://www.cnblogs.com/dolphinX/p/3290520.htm](http://www.cnblogs.com/dolphinX/p/3290520.htm)

    2015年08月25日 JS拖拽
  • Linux命令之killall

    `killall进程名称`可以关闭和这个进程名称相同的所有进程,例如:`killallphp-fpm`,不用再`ps`然后`kill-9`,类似的还有`pkill`命令。

    2015年08月25日 Linux killall pkill kill
1...18192021222324...31

关于 ACGIST

Copyright © 2013-2025 ACGIST.COM. All Rights Reserved.