linux vi编辑器使用方法

1.退出:
:wq! ----强制保存退出
:wq  ---- 保存退出
:x   ----- 作用和:wq 一样
ZZ  ---- 作用和:wq一样,(注意Z是大写的,并且不是在命令模式)
:q  ---- 退出
:q! ---  强制退出
========================================================
2.移动:
h : 在当前行向左移动一个字符
j: 移动到下一行
k:移动到上一行
l:在当前行向右移动一个字符
Ctrl +f: 向前滚动一页
Ctrl +b:向后滚动一页
:n   将光标定位到第n行
:$   将光标定位到最后一行
0    将光标定位到本行的行首
$    将光标定位到本行的行尾
G    将光标定位到本文章的最后一行,与:   $功能相同。
H    将光标定位到屏幕的顶端
M    将光标定位到屏幕的中间
L    将光标定位到屏幕的底端
=============================================================
3.搜索:
/: 后面跟要查找的东西,在文件中向前搜索
?:后面跟要查找的东西,在文件中向后搜索
n: 向前重复搜索
N: 向后重复搜索
=============================================================
4.复制:
yy: 复制光标当前行
nyy: 复制光标当前行到当前行以下的n-1行
:1,100 co 200 将1~100的内容复制到第200行。
:100,102 co $ 将100~102行的内容复制到最后一行。
==============================================================
5.*粘贴:
p :   粘贴到当前行的下一行
P(大) :   粘贴到当前行的 上一行
==============================================================
6.删除.剪切:
dd  删除当前行
ndd  与nyy相似
dw  删除一个单词
ndw  与ndd相似
x    删除一个字符
nx   删除n个字符
dG   删除当前光标到文件末尾的所有内容。
d0   删除当前光标到本行行首的所有内容
d$   删除当前光标到本行行尾的所有内容
:1,100d  删除1~100
:100d    删除第100行
:1,100 mo $  将1~100行的内容移动到最后一行。
======================================================
7.插入:
i:  在当前位置的字符前面进入插入模式
I: 在当前行的开头进行插入
a: 在当前位置的字符后面进入插入模式
A: 在当前行的结尾进行插入
o:  在当前行下面打开一个新行进行插入
O:在当前行上面打开一个新行进行插入
======================================================
8.撤销:
u: 撤销上一次的更改
=======================================================
9.替换:
r*egexp:是要匹配的式样
replacement: 是要替换的字符串*
*:s /regexp/replacement  -------------------------替换当前行出现的第一个式样
:s/regexp/replacement/g-------------------------替换当前行所有的匹配
:%s/regexp/replacement/g-----------------------替换文件中所有匹配式样
==========================================================

PS: 还有一个重要的命令就是”.” 命令,这个命令是用来重复上一命令的

Ubuntu Linux使用路由器上网

插上网线后网络连接处依然显视红X,使用pppoe上网依然可以,但是用路由器上网却总是連不上。这好像是network manager配置与pppoeconf冲突了,需要更改一下配置。
不过我用的却是另一个方法,那就是换一个网络管理工具。network manager功能虽然不错,但还是有些不足,于是偶就换了一个wicd。如图:

下载地址:http://cn.ziddu.com/download/410985/wicd-1.6.2.2.tar.gz.html
注意:wicd与network manager好像不兼容,安装wicd需要先卸载network manager。

英雄无敌3 for linux

下载地址:http://ftp.ubuntu.org.cn/games/xiechy/Heroes.of.Might.and.Magic.3.Linux.[mulek.info].iso
如果需要登陆,帐号:ubuntu密码:ubuntuftp。下载后用mount命令挂载鏡像文件。
sudo mount -o loop Heroes.of.Might.and.Magic.3.Linux.[mulek.info].iso /media/mycd

进入挂载目录
cd /media/mycd

安装
sudo bash setup.sh

以下为秘籍,不需要的可以跳过。
按‘tab’键,键入以下字符串,再打回车

  nwconlyamodel=立刻建出城里所有建筑
  nwcsirrobin=任务立即失败
  nwctrojanrabbit=任务立即完成
  nwcavertingoureyes=英雄部队里的每个空位都填上五个天使长
  nwcantioch=英雄获得弩车、医疗车和弹药车
  nwcigotbetter=英雄升一级
  nwccastleanthrax=英雄获得最大幸运
  nwccoconuts=英雄行动力无限
  nwcmuchrejoicing=英雄获得最大士气
  nwcalreadygotone=观看完全打开的藏宝图
  nwcgeneraldirection=打开地图
  nwcshrubbery=加各项资源
  nwctim=英雄学会全部魔法,且魔法点(spell points)变成999
  nwfleshwound=死亡骑士
  nwcphisherprice=明亮颜色

Ubuntu ADSL PPPoE 宽带上网设置

首先打开你的终端机,并键入以下命令:sudo pppoeconf
键入sudo 管理权限的密码

接下来系统会列出你可以使用的网络设备介面,如果没有问题你就回答『是』,或者你想手动设置网卡则按『否』
接着系统开始检测你的ADSL设备 (猫、IP分享器等等 )
这里毫无疑问的回答『是』
到了这里你就可以将你ISP的ID打上
输入你的密码
PPPoe拨接后会将DNS的IP告诉你,这里是问你是否要将DNS Server自动加入到设定的文件resolv.conf。所以这里要回答『是』
注意:如果你在选择 『是』后,没有能够自动获得DNS的IP,可以运行以下命令来自行添加:
sudo gedit /etc/resolv.conf
在弹出的文本编辑里输入以下代码:
nameserver XXX.XXX.XXX.XXX
其中 XXX.XXX.XXX.XXX是DNS的IP,如果你不清楚可以打电话到你的网络提供商询问DNS的IP
这里说来话长,一般MTU设置都为1500,但是由于通信协定各层级的header的关系,实际传输的封包大小也只有1452。所以这里一定要回答『是』。

这里问你,开启电脑进入系统时就自动连接网络吗?随你啦
基本上所有的设置都是缺省值『是』,除非你有特殊的考虑面,否则不要尝试其他的选择。

接下来有几个命令也顺便了解一下

想知道现在PPPoe的状况可用 plog
想手动ADSL拨号上网则可用 sudo pon dsl-provider
想手动断开ADSL 你可以用 sudo poff

另外偶自己写了一个pppoe设置的脚本,希望对大家有用。下载地址:http://cn.ziddu.com/download/397216/pppoe.gz.html

Fedora root用户登陆

将/etc/pam.d/gdm文件中的auth required pam_succeed_if.so user != root quiet改为#auth required pam_succeed_if.so user != root quiet或删除即可。方法:
执行命令sudo gedit,以root用户运行gedit,然后打开编辑/etc/pam.d/gdm文件。或执行命令sudo vi /etc/pam.d/gdm进行编辑。

偶建议大家还是尽量少用root用户登陆。

linux与windows双系统时间出错

偶滴电脑是linux与windows双系统操作,但是最近发现时间老是不对。并且更正了windows滴时间,linux滴又不对了。更正了linux滴,windows滴又不对了。而且与正确时间刚好相差N个小时整。

后来上网一查,原来是UTC时区问题。我的解决方法是开启windows的UTC,关闭linux的。

以Ubuntu为例:

修改/etc/default/rcS ,将 UTC=yes 改为 UTC=no 。然后把时间改为正确时间即可。

PHP与ACCESS数据操作

首先,数据库连接。以下语句为示例语句,请根据实际情况修改

$conn = @new COM(“ADODB.Connection”) or die (“ADO Connection faild.”);
$connstr = “DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=” . realpath(“data.mdb”);
$conn->Open($connstr);

数据查询

$rs = @new COM(“ADODB.RecordSet”);
$rs->Open(“select from user”,$conn,1,3);
/
循环读取数据 */
while(!$rs->eof){
echo $rs->Fields[“username”];
echo “<br/>”;
$rs->Movenext();
}

数据更新

$rs = @new COM(“ADODB.RecordSet”);
$username = “xefan.cn”;
$password = www.xefan.cn;
$rs->Open(“update user set username=’$username’,password=’$password’ where id=15”,$conn,1,3);

数据插入

$rs = @new COM(“ADODB.RecordSet”);
$username = “xefan.cn”;
$password = www.xefan.cn;
$rs->Open(“insert into user (username,password) values (‘$username’,’$password’)”,$conn,1,1);

数据删除

$rs = @new COM(“ADODB.RecordSet”);
$rs->Open(“delete from user where id=13”,$conn,1,1);

关闭连接

$conn->close();

PHP与MySQL数据处理

首先进行数据库连接,方法:http://www.xefan.com/archives/66653.html。以下语句为示例语句,请根据实际情况修改

数据查询

$sql=”select * from user”;
$result=mysql_query($sql);
while($row=mysql_fetch_array($result)){
//返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE。
echo $row[‘name’];//输出name字段
echo “&nbsp; “;
echo $row[‘password’];
echo “<br>”;
}

数据插入

$sql=”insert into user (name,password) values (‘xefa.cn’,’xefan.cn’)”;
$result=mysql_query($sql);

数据更新

$sql=”update user set name=’www.xefan.cn’ where id=2”;
$result=mysql_query($sql);

数据删除

$sql=”delete from user where id=2”;
$result=mysql_query($sql);

PHP与MySQL连接

<?php
//连接MySQL
$db=mysql_connect(‘主机名,本地主机用localhost,远程用IP地址’,’帐号’,’密码’);
mysql_select_db(data);//选择数据库
mysql_query(“set names ‘utf8’”);//设置编码,若中文乱码建议加上
?>

<?php
//关闭连接
mysql_close($db);
?>