vi 中的快捷键很多,在此整理一下。
vi 命令模式中可用的移动键:
h ---将光标向左移一个字符
j ---将光标向下移一个字符
k ---将光标向上移一个字符
l ---将光标向右移一个字符
w ---将光标向前移一个单词
b ---将光标向后移一个单词
e ---将光标移到下一个单词之后
0 ---将光标移到行首
$ ---将光标移到行末
) ---将光标移到下一句句首
( ---将光标移到上一句句首
} ---将光标移到下一段开始处
{ ---将光标移到下一段开始处
G ---将光标移到当前文档的底部
^ ---将光标移到行内非空格的第一个字符
H ---将光标移到屏幕上第一行
L ---将光标移到屏幕上最后一行
在vi 中滚动屏幕:
a 然后按回车---- 将光标所在的那一行移至屏幕顶部
z 然后按"-" ---将光标所在的那一行移至屏幕底部
z 然后按"." ---将光标所在的那一行移至屏幕中部
Ctrl u ------向上滚动半屏
Ctrl d ------向下滚动半屏
Ctrl f ------向前滚动全屏
Ctrl b ------向后滚动全屏
Ctrl e ------向下滚动一行
Ctrl y ------向上滚动一行
vi 的文本编辑命令:
D ------从光标定位的行末删除文本
dd ----- -行删除光标定位的当前行
ndd -----n 代表即将删除的行数。例如5dd 命令不仅会把当前行删除,还会把紧随其后的4行也删除
rc ----- -c 代表字符。光标下方的字符将被替换为r 后面的字符
R ------R 后键入的文本将改写当前文本,从光标所在位置开始,一直到按下Escape 返回命令模式为止
S ------删除当前行,并开始在当前的空白行插入文本
x ------删除光标下方的字符,并将字符右移填空
X ------删除光标前的字符,并移动字符,令光标下方的字符来填空
~ ------更改光标下方的字母的大小写
J ------将当前行和前一行连接起来,并删除因此而来的空行
vi 中的文件操作:
ZZ ----- -保存对当前文件的更改,然后退出vi
:wq -----保存对当前文件的更改,然后退出vi( 和ZZ 一样)
:w ----- -保存对当前文件的更改
:w! -----保存对当前文件的更改,如果有同名文件存在的话,就改写他
:q ----- -退出vi 。如果有未保存的更改,vi 将发出抱怨,并" 拒绝" 退出
:q! -----退出vi ,即使还有尚未保存的更改。所有未保存的更改将被丢失
:e filename -把指定文件载入vi 进行编辑。如果指定文件不存在,将创建一个新文件
:e! -----丢失所有更改,并从硬盘中重载已保存的文件
vi 中的查找和替换命令
/pattern --------pattern (样式)指代的是要查找的内容。vi 将在文件中向前查找与指定内容匹配的第一样式
/ -----------重复上一次查找,在文件中查找下一个匹配样式
?pattern --------pattern( 样式) 指代的是要查找的内容。vi 将在文件中向后查找与指定内容匹配的第一样式
? -----------重复上一次查找,在文件中查找与上一次查找内容匹配的样式
% -----------把当前光标移至匹配的圆括号或方括号。对程序员来说,该命令非常有用
:s/pattern1/pattern2 -- 用pattern2 替换当前行中与pattern1 匹配的每个内容
:%s/pattern1/pattern2-- 用pattern2 替换整个文件中与pattern1 匹配的每个内容
vi 中的yank 命令
yw -------把光标当前所在的单词移到缓冲区
y$ -------把当前行及其以前的所有文本移到缓冲区
yy -------把当前行整行移到缓冲区
nyy -------n 代表打算移到缓冲区的文本的行数。例如5yy 将把当前行和紧随其后的4 行移到缓冲区
文件编码格式转换:
gbk到utf8
iconv -f gbk -t utf-8 func_login.common.php > func_login.common.php.utf8
然后 mv func_login.common.php.utf8 func_login.common.php
就将func_login.common.php从gbk转为utf8格式了
rm -rf 删除目录
cp -r 移动目录
apache 优雅重启
cd /usr/sbin
apache2ctl configtest
Syntax OK //测试没问题了 可以重启
apachectl -k graceful
apache 立即重启
apachectl -k restart
Apache安装后,缺省根目录下没有但很有用的2个文件:
- favicon.ico: favicon.ico是一个16x16的站点图标文件,如果浏览器发现有这个文件,在地址栏中会用这个图标替换调浏览器的网页图标。IE6和 MOZILLA等主流浏览器都支持这个功能。
- robots.txt: 用于告诉搜索引擎的爬虫程序(spider)网站那些页面可以被索引,那些不可以。
/etc/apache2/sites-enabled/
域名配置
测试修改hosts
C:/WINDOWS/system32/drivers/etc/hosts
chown改变用户及组
chown mysql:mysql /var/db/mysql
chown 用户:用户组 /var/db/mysql (只改变本目录)
chown -R 用户:用户组 /var/db/mysql (只改变本目录及子目录)
chown -R 用户:用户组 目录 (只改变本目录及子目录)
文件的權限修改chmod 用法
使用权限 : 所有使用者
使用方式 : chmod [-cfvR] [--help] [--version] mode file...
说明 : Linux/Unix 的档案调用权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所调用。
参数 :
mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中
u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
范例 :将档案 file1.txt 设为所有人皆可读取 :
chmod ugo+r file1.txt
将档案 file1.txt 设为所有人皆可读取 :
chmod a+r file1.txt
将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
chmod ug+w,o-w file1.txt file2.txt
将 ex1.py 设定为只有该档案拥有者可以执行 :
chmod u+x ex1.py
将目前目录下的所有档案与子目录皆设为任何人可读取 :
chmod -R a+r *
此外 chmod 也可以用数字来表示权限如 chmod 777 file
语法为: chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
范例:
chmod a=rwx file
和
chmod 777 file
效果相同
chmod ug=rwx,o=x file
和
chmod 771 file
效果相同
若用 chmod 4755 filename可使此程序具有root的权限