Pages: 20/289 First page Previous page 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 Next page Final page [ View by Articles | List ]
Jul 1
举个例子来说:
有个文章表里面有个type字段,他存储的是文章类型,有 1头条,2推荐,3热点,4图文 .....11,12,13等等

现在有篇文章他既是 头条,又是热点,还是图文,

type中以 1,3,4的格式存储.

们我们如何用sql查找所有type中有4图文标准的文章呢??


这就要我们的find_in_set出马的时候到了.

以下为引用的内容:

select * from article where FIND_IN_SET('4',type)

----------------------------------------------------------
mysql手册中find_in_set函数的语法:

FIND_IN_SET(str,strlist)

假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。
一个字符串列表就是一个由一些被‘,’符号分开的子链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则   FIND_IN_SET() 函数被优化,使用比特计算。
如果str不在strlist 或strlist 为空字符串,则返回值为 0 。如任意一个参数为NULL,则返回值为 NULL。这个函数在第一个参数包含一个逗号(‘,’)时将无法正常运行。

mysql> SELECT FIND_IN_SET('b','a,b,c,d');

-> 2 因为b 在strlist集合中放在2的位置 从1开始
--------------------------------------------------------
select FIND_IN_SET('1','1'); 返回 就是1 这时候的strlist集合有点特殊 只有一个字符串 其实就是要求前一个字符串 一定要在后一个字符串集合中 才返回 大于0的数

select FIND_IN_SET('2','1,2');返回2
select FIND_IN_SET('6','1'); 返回0
----------------------------------------------------------

注意:
select * from treenodes where FIND_IN_SET(id,'1,2,3,4,5');
使用find_in_set函数一次返回多条记录

id 是一个表的字段 然后每条记录分别是id等于1,2,3,4,5的时候
有点类似in (集合)
select * from treenodes where id in (1,2,3,4,5);
Jun 30
Quotation

一般这种情况mail的内容就只是一些正常的系统信息或者是比较重要的错误报告。如果你安装了mutt的话直接用这个命令就可以查看mail的内容(用root登陆先),没有装的话用cat /var/spool/mail/root查看(用root登陆先)。

有时在进入系统的时候经常提示You have new mail in /var/spool/mail/root

你觉得烦人---解决方法:修改系统配置文件/etc/profile,告诉系统不要去检查邮箱.

具体操作:
命令行输入:echo "unset MAILCHECK" >> /etc/profile 【把unset MAILCHECK加到文件/etc/profile 的尾部】然后重新登陆控制台就没有这个讨厌的提示了。

你觉着不烦人---你想把这封信邮件发到自己的邮箱看一下---解决方法:修改/usr/share/logwatch/default.conf/logwatch.conf配置文件

具体操作:

命令行输入:vim  /usr/share/logwatch/default.conf/logwatch.conf

Highslide JS

MailTo更改为想要输送的邮件人地地址就可以了

收到那一封信,内容分为:
Named(一些不可链接的对象)
pam_unix(一些验证对象,比如sshd)

sendmail
sendmail - largeboxes(大型邮件spool文件)
SSHD(sshd的次数,一下描述信息)
磁盘空间(挂载,空间使用情况)等信息


下面我们一起来看我总结了关于Centos系统关闭You have new mail in /var/spool/mail/root提示的方法,希望文章对各位会有帮助。

昨天搬到阿里云了。
装的系统是Centos 6.3的加固版
今天查看内存的时候 出现一天奇怪的提示
You have new mail in /var/spool/mail/root
有的时候每敲一下回车,就出来You have new mail in /var/spool/mail/root的提示,究竟是为什么呢?
Linux 系统经常会自动发出一些邮件来提醒用户系统中出了哪些问题(收件箱位置:/var/mail/)。可是这些邮件都是发送给 root 用户的。出于系统安全考虑,通常不建议大家直接使用 root 帐户进行日常操作。所以要想点办法来让系统把发给 root 用户的邮件也给自己指定的外部邮箱发一份,或者是直接关闭此项服务。

1、关闭sendmail服务,这里介绍一种不用关闭sendmail服务的方法
代码如下  复制代码

echo “unset MAILCHECK” >> /etc/profilesource /etc/profile

关闭sendmail的功能:
代码如下

chmod 0 /usr/sbin/sendmailmv /usr/sbin/sendmail /usr/sbin/sendmail.bakln -s /var/qmail/bin/sendmail /usr/sbin/sendmail

清空 /var/spool/mail/root日志
代码如下
cat /dev/null > /var/spool/mail/rootcat /dev/null>;/var/spool/mail/root

或者转发到自己的邮箱,下面介绍下怎么转发到自己的邮箱(此方法未经本人亲自验证 来源于网络,有喜欢折腾的请自己研究,成功了 可以跟帖分享经验)
2、root邮件转发到自己的邮箱
方法一:
修改此文件
代码如下
/etc/log.d/logwatch.conf
添加MailTo = root,xxx@xxx.com
方法二
代码如下
/etc/aliases
添加root: xxx@xxx.com
注意:好像如果设置成和主机同域的,好像邮件就发不成,比如本机邮件就是moper.me,那么发这个就没法发,相应的发其他邮箱就可以成功。
关于“/etc/aliases”:
当sendmail收到一个要送给xxx的信时,它会依据/etc/aliases文件中的内容送给另一个使用者。这个功能可以创造一个只有在信件 系统内才有效的使用者。例如mailing list就会用到这个功能,在 mailing list 中,我们可能会创造一个叫 redlinux@link.ece.uci.edu的 mailinglist,但实际上并没有一个叫redlinux的使用者。实际 aliases档的内容是将送给这个使用者的信都收给mailing list处理程式负责分送的工作。
/etc/aliases是一个文本文档,而sendmail需要一个二进位格式的 /etc/aliases.db。newaliases的功能传是将/etc/aliases转换成一个sendmail所能了解的db文件:
代码如下
[root@centos ~]# newaliases
除root外的其它用的邮件可以通过在用户/home/下建立一个.forward文件实现转发:
代码如下
//somebody
other1
other2
文件权限设为600,作用一样,但.forward可以由用户自行维护,而aliases则只有治理员才能修改。
设定~/.forward档案加入转寄目的即可
网上很多教程是你抄我,我抄你,根本就没有验证过的,比如有种方法是修改”/usr/share/logwatch/default.conf/logwatch.conf“配置文件,在centos6中根本就没有这个文件,至于以前的版本有没有就不知道了。
还有很多教程,只有“echo "unset MAILCHECK" >> /etc/profile”,而没有“source /etc/profile”,这也是不对的。
Jun 23
netstat -tunlp 会显示所有端口和所有对应的程序,用grep管道可以过滤出想要的关键字段.
列一下22端口占用的程序


查看某一端口的占用情况: lsof -i:端口号
[root@www ~]# lsof -i:21
  COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
  pure-ftpd 2651 root 4u IPv4 7047 TCP *:ftp (LISTEN)
  pure-ftpd 2651 root 5u IPv6 7048 TCP *:ftp (LISTEN)
这里显示出21号端口正在被pure-ftpd使用,状态是listen。



netstat -anp 显示系统端口使用情况
Jun 16
.net学习路线

入门篇1.         学习面向对象(OOP)的编程思想

许多高级语言都是面向对象的编程,.NET也不例外。如果您第一次接触面向对象的编程,就必须理解类、对象、字段、属性、方法和事件、封装、继承和多态性、重载、重写等概念。需要说明的是,微软的产品帮助文档做得非常完善,而且查询相当方便,入门者不得不看。安装完Visual Studio.NET2003(或者Visual Studio.NET2002)后,在“程序”组里有一个Visual Studio 组合帮助集合。初学者从帮助文档就会获得许多知识。

2.         选择一门语言,学习语法及相关基础知识

选 择语言的标准:根据你自己的需求和个人的技术背景。在.NET平台下,C#、VB.NET都是调用Framework的类库,效率基本一样,C#的语法严谨,适合以前C++、VC的程序员。VB.NET不区分大小写,写法随意一些.,自动缩进,适合以前VB的程序员,微软也一再提倡用VB.NET进行快速开发。VC++.NET更接近底层,可以用托管和非托管两种方式进行编程。

选择了需要使用的语言后,我们需要了解语言的语法规则,包括语句、类型、表达式、运算符、函数等等,我建议一开始写程序就要养成良好的编程风格,规范地进行变量的命名,在代码中写好注释。这对以后的软件开发生涯都是很有意义的。

3.         理解.NET思想并熟悉框架类库(Framework Class Library)

我们借用一幅图来说明一下公共语言运行库(CLR)、框架类库(FCL)与应用程序之间以及与整个系统之间的关系。

首 先,我们要了解公共语言运行库、程序集、通用类型系统的概念。在此基础上,学习.NET框架类库。.NET框架类库是一个与公共语言运行库紧密集成的可重用的类型集合。.NET 框架类库封装了大部分Win32 API,许多以前需要调用API才能实现的功能,在.NET下非常容易就实现,许多情况下只需要一句话就足够了。所以,我们在程序设计的时候要尽量避免调用 Win32API。学习.NET 框架类库的捷径:掌握常用的类库,其它不常用的类库只需要了解,用到的时候查阅即可。
Jun 16
knockoutjs,简称ko,是一个轻量级的MVVM框架,通过简易的UI绑定语法,实现动态更新UI。
主页:http://knockoutjs.com/index.html
源码:http://github.com/SteveSanderson/knockout

ko的特点:
声明式绑定:通过简洁易读的data-bind语法,将DOM元素与ViewModel关联起来。
UI自动更新:当模型(ViewModel)状态更新时,自动更新UI界面。
依赖跟踪:在模型数据间建立隐式的关系链。
模板化:快速生成复杂,可嵌套UI模型数据的函数。

更多特性:
免费开源,基于MIT许可证。
纯javascript实现,可以与任何web框架共用。
小巧,压缩精简后只有42kb,开启g-zip后只剩15kb。
无其他依赖。
支持所有主流浏览器,IE 6+,Firefox 2+,Chrome,Opera,Safari (desktop/mobile)。
完善的文档,包括API文档,在线实例,交互教程。(在官网导航也可找到)

下载
访问该页面来获取最新的knockoutjs:http://knockoutjs.com/downloads/index.html
包括用于生产环境的版本和调试版本,调试版本仅在当你打算了解ko框架工作原理时使用,请不要在生产环境中使用,因为它对外暴露了额外的不被支持的API。

安装
使用ko很简单,只需要在html文件里通过script标签引入ko的js文件,比如

Jun 16
iptables -F 的时候是不能改变原来设置的默认规则的,如果原来设置的 iptables -P INPUT DROP ,现在在远程运行一下iptables -F 的话,远程连接就会立即中断,只能到那机子旁边本地登陆运行 iptables -P INPUT ACCEPT ,这样才能再从远端连接进来。原来听说过,但没长记性,今天体验了一次,这回长记性了。
Jun 15
Highslide JS

淘宝 NPM 镜像

这是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步。

使用说明

你可以使用我们定制的 cnpm (gzip 压缩支持) 命令行工具代替默认的 npm:

$ npm install -g cnpm --registry=https://registry.npm.taobao.org

或者你直接通过添加 npm 参数 alias 一个新命令:

alias cnpm="npm --registry=https://registry.npm.taobao.org \ --cache=$HOME/.npm/.cache/cnpm \ --disturl=https://npm.taobao.org/dist \ --userconfig=$HOME/.cnpmrc"  # Or alias it in .bashrc or .zshrc $ echo '\n#alias for cnpm\nalias cnpm="npm --registry=https://registry.npm.taobao.org \   --cache=$HOME/.npm/.cache/cnpm \   --disturl=https://npm.taobao.org/dist \   --userconfig=$HOME/.cnpmrc"' >> ~/.zshrc && source ~/.zshrc

安装模块

registry.npm.taobao.org 安装所有模块. 当安装的时候发现安装的模块还没有同步过来, 淘宝 NPM 会自动在后台进行同步, 并且会让你从官方 NPMregistry.npmjs.org 进行安装. 下次你再安装这个模块的时候, 就会直接从 淘宝 NPM 安装了.

$ cnpm install [name]

同步模块

直接通过 sync 命令马上同步一个模块, 只有 cnpm 命令行才有此功能:

$ cnpm sync connect

当然, 你可以直接通过 web 方式来同步: /sync/connect

$ open https://npm.taobao.org/sync/connect

其它命令

支持 npm 除了 publish 之外的所有命令, 如:

$ cnpm info connect
Jun 15
Pages: 20/289 First page Previous page 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 Next page Final page [ View by Articles | List ]