CentOS python退格乱码解决方法

由于CentOS6.5系统自带的python版本为2.6.6,而很多情况下我们要求使用的python版本发现使用退格键和上下左右键会出现乱码。

分析原因:由于系统缺少了readline相关模块,CentOS 6.5默认只安装了readline模块而没有安装readline-devel模块

解决方法:安装readline-devel模块

 

  • yum -y install readline-devel
  • 重新编译一下python3

    ./configure –prefix=/usr/local/python3

 

make && make install

重新启动python就能够正常使用退格键…..

发表在 Python | 留下评论

Apache2.4禁止使用IP访问修改配置方法

1.首先确认Apache已经安装status模块:

httpd.conf中查看LoadModule status_module modules/mod_status.so是否开启(前面是否有#);

如果没有开启,操作方法如下:

linux服务器:重新编译Apache,加上–enable-module=so参数即可;

windows服务器:无需任何编译,LoadModule status_module modules/mod_status.so 去除注释及可(删除该行前的“#”)

2、配置Apache Server Status:

修改httpd.conf,在最后加上server-status的配置:

<IfModule status_module>
<Location /server-status>
SetHandler server-status
Order Deny,Allow
Deny from all
#Allow from all
</Location>
</IfModule>

上面的配置指定的是禁止访问server-status,如果你想开启server-status,在Deny from all前面加上#,去掉Allow from all前面的#即可。

继续阅读

发表在 Web | Apache2.4禁止使用IP访问修改配置方法已关闭评论

Hanoi Tower 汉诺塔的理解分析

关于汉诺塔起源啊、传说啊神马的就不啰嗦了,我们直接切入正题:
问题描述:

有一个梵塔,塔内有三个座A、B、C,A座上有诺干个盘子,盘子大小不等,大的在下,小的在上(如图)。

把这些个盘子从A座移到C座,中间可以借用B座但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘

子始终保持大盘在下,小盘在上。

描述简化:把A柱上的n个盘子移动到C柱,其中可以借用B柱。

 

我们直接假设有n个盘子:

先把盘子从小到大标记为1、2、3……n

先看原问题三个柱子的状态:
状态0  A:按顺序堆放的n个盘子。B:空的。C:空的。

目标是要把A上的n个盘子移动到C。因为必须大的在下小的在上,所以最终结果C盘上最下面的应该是标号为n的盘子,试想:

要取得A上的第n个盘子,就要把它上面的n-1个盘子拿开吧?拿开放在哪里呢?共有三个柱子:A显然不是、如果放在C上

了,那么最大的盘子就没地方放,问题还是没得到解决。所以选择B柱。当然,B上面也是按照大在下小在上的原则堆放的

(记住:先不要管具体如何移动,可以看成用一个函数完成移动,现在不用去考虑函数如何实现。这点很重要)。

继续阅读

发表在 Python | 留下评论

《水调歌头·明月几时有》

年代: 作者: 苏轼
明月几时有,把酒问青天。
不知天上宫阙,今夕是何年?
我欲乘风归去,又恐琼楼玉宇,
高处不胜寒。
起舞弄清影,何似在人间!

转朱阁,低绮户,照无眠。
不应有恨,何事长向别时圆?
人有悲欢离合,月有阴晴圆缺,
此事古难全。
但愿人长久,千里共婵娟。

继续阅读

发表在 古美诗词 | 留下评论

GIT命令集

初始化一个Git仓库,使用git init命令。
添加文件到Git仓库,分两步:
第一步,使用命令git add ,注意,可反复多次使用,添加多个文件;
第二步,使用命令git commit,完成。
工作区的状态,使用git status命令。
如果git status告诉你有文件被修改过,用git diff可以查看修改内容。
版本回退
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset –hard commit_id。
git log查看提交历史,得到commit_id,以便确定要回退到哪个版本。加上–pretty=oneline参数简化输出信息。
用git reflog查看命令历史,以便确定要回到未来的哪个版本。

撤销修改
git checkout — file命令中的–很重要,没有–,就变成了“切换到另一个分支”的命令

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout — file。

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

删除文件
git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。
命令git rm用于删除一个文件。如果已提交到版本库,不用担心误删,但恢复文件到最新版本,丢失最近一次提交后你修改的内容。

继续阅读

发表在 Linux | 标签为 , | 留下评论

git fatal: remote origin already exists.解决方法

最近学习GIT,使用git 添加远程github仓库的时候提示错误:fatal: remote origin already exists. 英文字面意思是远程库存在了.

最后找到解决办法如下:
1、先删除远程 Git 仓库

$ git remote rm origin

2、再添加远程 Git 仓库

$ git remote add origin git@github.com:kwenzhang/gittest.git

如果执行 git remote rm origin 报错的话,我们可以手动修改gitconfig文件的内容

$ vi .git/config

把 [remote “origin”] 那一行删掉就好了。

发表在 Linux | 留下评论

centos使用yum安装开发组件包

yum的命令形式一般是如下:yum [options] [command] [package …]
其中的[options]是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为”yes”),-q(不显示安装的过程)等等。[command]为所要进行的操作,[package …]是操作的对象。

概括了部分常用的命令包括:
自动搜索最快镜像插件:yum install yum-fastestmirror
安装yum图形窗口插件:yum install yumex

1 安装
yum install 全部安装
yum install package1 安装指定的安装包package1
yum groupinsall group1 安装程序组group1
2 更新和升级

yum update 全部更新
yum update package1 更新指定程序包package1
yum check-update 检查可更新的程序
yum upgrade package1 升级指定程序包package1
yum groupupdate group1 升级程序组group1
3 查找和显示
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包

继续阅读

发表在 Linux | 标签为 , | 留下评论

WordPress固定链接设置的几种方法

wordpress固定链接设置技巧:

1、不要让中文字符出现在固定链接里面

  虽然现在的搜索引擎已经能识别URL地址里面的中文字符,但无论是从美观上,还是从wordpress 优化的角度来看,都是非常差的。

2、不要让分类的链接出现在固定链接里面

  这一点是很多人都会忽略的地方。让分类出现在固定链接里面有两个缺陷:一是一篇文章如果选择了多个分类的话,则会出现多个链接地址,这很容易造成因为重复内容而被搜索引擎惩罚;二是有可能会造成关键词堆砌而被搜索引擎惩罚。
3、不要让日期出现在固定链接里面

  这基于两个方面的考虑。一是如果数字出现在固定链接里面,等于提醒搜索引擎,这是很旧的内容了,没必要再爬一遍了。另外一个原因是,假如你要修改文章的日期重新发布的话,链接地址就变了,也就是意味着你的反向链接,PR 等等都没有了。
4、链接不要过深

  这一点经常看到。很多wordpress 用户的固定链接是年/月/日/分类名/文章名。这种过于深的固定链接对搜索引擎是非常不友好的。

wordpress固定链接设置的一些参数:

%year%:基于文章发布的年份,比如2010;
%monthnum%:基于文章发布的月份,比如01;
%day%:基于文章发布当日,比如06;
%hour%:基于文章发布小时数,比如23;
%minute%:基于文章发布分钟数,比如43;
%second%:基于文章发布秒数,比如33;
%postname%:基于文章的postname,其值为撰写时指定的缩略名,不指定缩略名时是文章标题;
%post_id%:基于文章post_id,比如48;
%category%:基于文章分类,子分类会处理成“分类/子分类”这种形式;
%author%:基于文章作者名。

  将上述参数进行组合,即可得到wordpress的固定链接形式。

网上常见的几种设置方法:

•/%year%/%monthnum%/%day%/%postname%/

•/%year%/%monthnum%/%postname%/

•/%year%/%monthnum%/%day%/%postname%.html

•/%year%/%monthnum%/%postname%.html

•/%category%/%postname%.html

•/%post_id%.html

发表在 Web | 标签为 | WordPress固定链接设置的几种方法已关闭评论

VirtualBox安装添加已有硬盘出现E_INVALIDARG(0x80070057)的解决方法

问题描述:UUID已经存在

  Cannot register the hard disk ‘D:\system_iso\centos6.5.vdi’ {05f096aa-67fc-4191-983d-1ed00fc6cce9}

  because a hard disk ‘D:\system_iso\centos6\centos6.5.vdi’ with UUID {05f096aa-67fc-4191-983d-1ed00fc6cce9} already exists.

错误代码:

  返回 代码:E_INVALIDARG (0x80070057)

  组件:VirtualBoxWrap

  界面:IVirtualBox {0169423f-46b4-cde9-91af-1e9d5b6cd945}

  被召者 RC:VBOX_E_OBJECT_NOT_FOUND (0x80BB0001)

解决方法:

  1.打开cmd ,切换目录至virtual box的安装目录下:(我的在: C:\APP\aux_tools\VirtualBox)

  2.执行 vboxmanage 生成新的 UUID

    格式: vboxmanage internalcommands sethduuid X:\path\xxx.vdi

例:vboxmanage internalcommands sethduuid “D:\system_iso\centos6\centos6.5.vdi”

发表在 Windows | 标签为 | 留下评论

在sql中将时间戳转换为时间类型

SQL里面有个DATEADD的函数。时间戳就是一个从1970-01-01 08:00:00到时间的相隔的秒数。所以只要把这个时间戳加上1970-01-01 08:00:00这个时间就可以得到你想要的时间了select DATEADD(second,1268738429 + 8 * 60 * 60,’1970-01-01 00:00:00′)

注解:北京时间与GMT时间关系

1.GMT是中央时区,北京在东8区,相差8个小时
2.所以北京时间 = GMT时间 + 八小时

例如:
SELECT DATEADD(S,1160701488 + 8 * 3600,’1970-01-01 00:00:00′) –时间戳转换成普通时间
SELECT DATEDIFF(S,’1970-01-01 00:00:00′, ‘2006-10-13 09:04:48.000’) – 8 * 3600 –普通时间转换成时间戳

发表在 SQL | 留下评论