手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表分类:Linux

笔记:在Ubuntu中设置samba共享可读写文件夹

在ubuntu SERVER最初创建的时候就可以选择samba进行安装,如果你没有安装过,那就先运行
apt-get install samba
在网上看到还有资料写需要安装smbfs,不知道有没有什么用。

安装成功后,进入samba目录:/etc/samba
先备份,smb.conf文件
cp smb.conf smb.conf.bak
然后打开smb.conf
找到 ; security = user
把前面的分号注释掉,再加上一行
username map = /etc/samba/smbusers
(这个文件是不存在的,到时候需要单独建立)

还在smb.conf文件里,找到[global]
默认在ubuntu里面workgroup = WORKGROUP,好象说有的版本是 workgroup = MSHOME,如果是这种就改为WORKGROUP吧,毕竟在XP里面工作组都是workgroup
再加上:
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936

再到文件的结束处加上
[www]
comment = '这是该共享的注释'
path = /var/www
public = yes
writable = yes
valid users = www
create mask = 0777
directory mask = 0777
force user = nobody
force group = nogroup
available = yes
browseable = yes

保存退出。
然后打开smbusers文件,加入
www = "netwok username"
保存退出

运行
useradd www
添加一个Www用户
再运行smbpasswd -a www
为www的访问设定一个密码

现在就OK了,使用testparm看一下smb的情况
最后/etc/init.d/samba restart
重启。
OVER
在windows下面就可以访问了。。。

下面是对配置的简单注释
[www]     //这是共享时显示的名称
comment = '这是该共享的注释'   //注释
path = /var/www  //路径
public = yes          //是否开放
writable = yes       //是否可写
valid users = www //访问的用户
create mask = 0777   //创建权限 (0777为最大权限)
directory mask = 0777 //目录权限
force user = nobody    //目标用户
force group = nogroup//目标组
available = yes              //是否启用
browseable = yes         //是否可浏览

Tags: ubuntu, samba

[笔记]在ubuntu下安装amp服务

目前我还是利用系统自带的apt来进行安装的,所以相对还是比较简单的:
apt-get install apache2.2-common apache2 php5-mysql  mysql-server-5.0 mysql-client mysql-common
就可以直接安装了。安装过程中会有提示你设置MYSQL的密码,主要是指ROOT的。

如果是用新立得安装那就更简单了,只要根据你需要的模块进行安装就行了。(以前我都是这样搞的,但是这次是用的SERVER,没法直接用新立得)

顺便说一下,网易的源速度真的不错。
感谢网易在开源方面的贡献。谢谢

使用默认的apt-getp安装的时候,它的配置在/etc/apache2/apache2.conf里,而不是大家所熟知的httpd.conf,而virtualhost的配置是在/etc/apach2/site-enabled/目录里,里面有一个默认的000-default文件,这就是默认的webroot的配置,我们可以很清楚的看到,webroot被定义在/var/www目录下面

由于是使用 apt 进行的安装,所以对于PHP等的扩展,也必须使用 apt才行,否则你会感觉到很迷惘。

Tags: ubuntu, lamp

[笔记]Ubuntu下修改网卡和DNS

纯粹是记录吧。在使用 UBUNTU 的时候,如果是ubuntu desktop,那配置起来是相当简单的,就象windows那样配置就行了,但如果是ubuntu server,怎么配置呢?当然是用ifconfig了。
很简单的命令:
ifconfig eth0 192.168.1.2 broadcast 192.168.1.1 netmask 255.255.255.0

  1. eth0是代表第一块网卡,因此,如果你不确认的时候,必须要使用ifconfig查看一下有几块网卡,想配置的是不是eth0
  2. 192.168.1.2是想要配置的IP
  3. broadcast 192.168.1.1 代表了网关
  4. netmask 就是子网掩码了

这样配置完还是不能上网的,因为还没有配置DNS,然后 vi /etc/resolv.conf ,在文件里加入:nameserver 202.96.209.133 ,当然这是上海地区所使用的DNS,有常见的几条,统统加进来就行了。

最后在命令行下执行:/etc/init.d/networking start,对刚才的配置进行重新启动,激活一下网卡配置。
OK,就可以上网了。。

后来我又看了点资料,发现网上还是有详解的:

http://blog.ixpub.net/html/54/12634654-245464.html
  1. ifconfig 是一个用来查看、配置、启用或禁用网络接口的工具,这个工具极为常用的。可以用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。也可以把它写入一个文件中(比如/etc/rc.d/rc.local),这样系统引导后,会读取这个文件,为网卡设置IP地址  
  2. 1 ifconfig 查看网络接口状态;  
  3.   
  4. ifconfig 如果不接任何参数,就会输出当前网络接口的情况;  
  5.   
  6. [root@localhost ~]# ifconfig  
  7. eth0      Link encap:Ethernet  HWaddr 00:C0:9F:94:78:0E  
  8.           inet addr:192.168.1.88  Bcast:192.168.1.255  Mask:255.255.255.0  
  9.           inet6 addr: fe80::2c0:9fff:fe94:780e/64 Scope:Link  
  10.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
  11.           RX packets:850 errors:0 dropped:0 overruns:0 frame:0  
  12.           TX packets:628 errors:0 dropped:0 overruns:0 carrier:0  
  13.           collisions:0 txqueuelen:1000  
  14.           RX bytes:369135 (360.4 KiB)  TX bytes:75945 (74.1 KiB)  
  15.           Interrupt:10 Base address:0x3000  
  16.   
  17. lo        Link encap:Local Loopback  
  18.           inet addr:127.0.0.1  Mask:255.0.0.0  
  19.           inet6 addr: ::1/128 Scope:Host  
  20.           UP LOOPBACK RUNNING  MTU:16436  Metric:1  
  21.           RX packets:57 errors:0 dropped:0 overruns:0 frame:0  
  22.           TX packets:57 errors:0 dropped:0 overruns:0 carrier:0  
  23.           collisions:0 txqueuelen:0  
  24.           RX bytes:8121 (7.9 KiB)  TX bytes:8121 (7.9 KiB)  
  25.   
  26. 解说:  
  27. eth0 表示第一块网卡, 其中 HWaddr 表示网卡的物理地址,可以看到目前这个网卡的物理地址(MAC地址)是 00:C0:9F:94:78:0E ; inet addr 用来表示网卡的IP地址,此网卡的 IP地址是 192.168.1.88,广播地址, Bcast:192.168.1.255,掩码地址Mask:255.255.255.0  
  28.   
  29. lo 是表示主机的回坏地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 HTTPD服务器的指定到回坏地址,在浏览器输入 127.0.0.1 就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道;  
  30.   
  31. 如果想知道主机所有网络接口的情况,请用下面的命令;  
  32. [root@localhost ~]# ifconfig -a  
  33.   
  34. 如果想查看某个端口,比如查看eth0 的状态,就可以用下面的方法;  
  35. [root@localhost ~]# ifconfig eth0  
  36.   
  37.   
  38. 2 ifconfig 配置网络接口;  
  39.   
  40. ifconfig 可以用来配置网络接口的IP地址、掩码、网关、物理地址等;值得一说的是用ifconfig 为网卡指定IP地址,这只是用来调试网络用的,并不会更改系统关于网卡的配置文件。如果您想把网络接口的IP地址固定下来,目前有三个方法:一是通过各个发行和版本专用的工具来修改IP地址;二是直接修改网络接口的配置文件;三是修改特定的文件,加入ifconfig 指令来指定网卡的IP地址,比如在redhat或Fedora中,把ifconfig 的语名写入/etc/rc.d/rc.local文件中;  
  41.   
  42. ifconfig 配置网络端口的方法:  
  43.   
  44. ifconfig 工具配置网络接口的方法是通过指令的参数来达到目的的,我们只说最常用的参数;  
  45. ifconfig 网络端口 IP地址 hw <HW> MAC地址 netmask 掩码地址 broadcast 广播地址 [up/down]  
  46.   
  47. * 实例一:  
  48. 比如我们用ifconfig 来调试 eth0网卡的地址  
  49. [root@localhost ~]# ifconfig eth0 down  
  50. [root@localhost ~]# ifconfig eth0 192.168.1.99 broadcast 192.168.1.255 netmask 255.255.255.0  
  51. [root@localhost ~]# ifconfig eth0 up  
  52. [root@localhost ~]# ifconfig eth0  
  53. eth0 Link encap:Ethernet HWaddr 00:11:00:00:11:11  
  54.           inet addr:192.168.1.99 Bcast:192.168.1.255 Mask:255.255.255.0  
  55.           UP BROADCAST MULTICAST MTU:1500 Metric:1  
  56.           RX packets:0 errors:0 dropped:0 overruns:0 frame:0  
  57.           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0  
  58.           collisions:0 txqueuelen:1000  
  59.           RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)  
  60.           Interrupt:11 Base address:0x3400  
  61.   
  62. 注解: 上面的例子我们解说一下;  
  63.   
  64. 第一行:ifconfig eth0 down 表示如果eth0是激活的,就把它DOWN掉。此命令等同于 ifdown eth0;  
  65. 第二行:用ifconfig 来配置 eth0的IP地址、广播地址和网络掩码;  
  66. 第三行:用ifconfig eth0 up 来激活eth0 ; 此命令等同于 ifup eth0  
  67. 第四行:用 ifconfig eth0 来查看 eth0的状态;  
  68.   
  69. 当然您也可以用直接在指令IP地址、网络掩码、广播地址的同时,激活网卡;要加up参数;比如下面的例子;  
  70. [root@localhost ~]# ifconfig eth0 192.168.1.99 broadcast 192.168.1.255 netmask 255.255.255.0 up  
  71.   
  72. * 实例二:在这个例子中,我们要学会设置网络IP地址的同时,学会设置网卡的物理地址(MAC地址);  
  73.   
  74. 比如我们设置网卡eth1的IP地址、网络掩码、广播地址,物理地址并且激活它;  
  75. [root@localhost ~]# ifconfig eth1 192.168.1.252 hw ether 00:11:00:00:11:11 netmask 255.255.255.0 broadcast 192.168.1.255 up  
  76. 或  
  77. [root@localhost ~]# ifconfig eth1 hw ether 00:11:00:00:11:22  
  78. [root@localhost ~]# ifconfig eth1 192.168.1.252 netmask 255.255.255.0 broadcast 192.168.1.255 up  
  79.   
  80. 其中 hw 后面所接的是网络接口类型, ether表示乙太网, 同时也支持 ax25 、ARCnet、netrom等,详情请查看 man ifconfig ;  
  81.   
  82.   
  83. 3.3 如何用ifconfig 来配置虚拟网络接口;  
  84.   
  85. 有时我们为了满足不同的需要还需要配置虚拟网络接口,比如我们用不同的IP地址来架运行多个HTTPD服务器,就要用到虚拟地址;这样就省却了同一个IP地址,如果开设两个的HTTPD服务器时,要指定端口号。  
  86.   
  87. 虚拟网络接口指的是为一个网络接口指定多个IP地址,虚拟接口是这样的 eth0:0 、 eth0:1、eth0:2 ... .. eth1N。当然您为eth1 指定多个IP地址,也就是 eth1:0、eth1:1、eth1:2 ... ...以此类推;  
  88.   
  89. 其实用ifconfig 为一个网卡配置多个IP地址,就用前面我们所说的ifconfig的用法,这个比较简单;看下面的例子;  
  90. [root@localhost ~]# ifconfig eth1:0 192.168.1.251 hw ether 00:11:00:00:11:33 netmask 255.255.255.0 broadcast 192.168.1.255 up  
  91. 或  
  92. [root@localhost ~]# ifconfig eth1 hw ether 00:11:00:00:11:33  
  93. [root@localhost ~]# ifconfig eth1 192.168.1.251 netmask 255.255.255.0 broadcast 192.168.1.255 up  
  94.   
  95. 注意:指定时,要为每个虚拟网卡指定不同的物理地址;  
  96.   
  97. 在 Redhat/Fedora 或与Redhat/Fedora类似的系统,您可以把配置网络IP地址、广播地址、掩码地址、物理地址以及激活网络接口同时放在一个句子中,写入/etc/rc.d/rc.local中。比如下面的例子;  
  98. ifconfig eth1:0 192.168.1.250 hw ether 00:11:00:00:11:44 netmask 255.255.255.0 broadcast 192.168.1.255 up  
  99. ifconfig eth1:1 192.168.1.249 hw ether 00:11:00:00:11:55 netmask 255.255.255.0 broadcast 192.168.1.255 up  
  100.   
  101. 解说:上面是为eth1的网络接口,设置了两个虚拟接口;每个接口都有自己的物理地址、IP地址... ...  
  102.   
  103.   
  104. 3.4 如何用ifconfig 来激活和终止网络接口的连接;  
  105.   
  106. 激活和终止网络接口的用 ifconfig 命令,后面接网络接口,然后加上 down或up参数,就可以禁止或激活相应的网络接口了。当然也可以用专用工具ifup和ifdown 工具;  
  107. [root@localhost ~]# ifconfig eth0 down  
  108. [root@localhost ~]# ifconfig eth0 up  
  109. [root@localhost ~]# ifup eth0  
  110. [root@localhost ~]# ifdown eth0  
  111.   
  112. 对于激活其它类型的网络接口也是如此,比如 ppp0,wlan0等;不过只是对指定IP的网卡有效。  
  113.   
  114.   
  115. 注意:对DHCP自动分配的IP,还得由各个发行版自带的网络工具来激活;当然得安装dhcp客户端;这个您我们应该明白;  
  116.   
  117. 比如Redhat/Fedora  
  118. [root@localhost ~]# /etc/init.d/network start  
  119.   
  120. Slackware 发行版;  
  121. [root@localhost ~]# /etc/rc.d/rc.inet1  

Tags: ubuntu, ifconfig, resolv

Debian GNU/Linux 5.0 Lenny 官方中文声明

2009年02月14日
Debian 计划高兴地宣布在经历了 22 个月坚持不懈地开发之后,Debian GNU/Linux 5.0 版(代号Lenny)正式发布了。Debian GNU/Linux 是一个 自由的操作系统,它支持 12 种处理器架构并带有KDE、Gnome、Xfce 和 LXDE 桌 面环境。同时它和 FHS v2.3 兼容,其软件针对 LSB 3.2 版开发。 Debian GNU/Linux 可以在多种计算机上运行,从掌上机和手持系统到超级计 算机,在它们之间的几乎任何机型都可以。它支持十二种架构:Sun SPARC (sparc)、HP Alpha (alpha)、Motorola/IBM PowerPC (powerpc)、Intel IA-32 (i386)、IA-64 (ia64)、HP PA-RISC (hppa)、MIPS (mips, mipsel)、ARM (arm, armel)、IBM S/390 (s390) 以及 AMD64 和 INTEL EM64T (amd64)。

Debian GNU/Linux 5.0 Lenny 加入了对 Marvell 的 Orion 平台的支 持,它被用于许多存储设备。所支持的存储设备包括 QNAP Turbo Station、HP mv2120 和 Buffalo Kurobox Pro。另外,Lenny 现在支持多种网络笔记 本计算机(Netbook),特别是华硕出品的 Eee PC。Lenny 还包含了用于 Emdebian 的编译工具,用它可以对 Debian 源代码包进行交叉编译并收缩,使之 适用于嵌入式 ARM 系统。

Debian GNU/Linux 5.0 Lenny 包括了新的 ARM EABI 移 植,armel。这个新的移植可以更有效地使用现代和未来的 ARM 处理器。 因此,老的 ARM 移植 (arm) 就过时了。

本次发布包括了多种升级过的软件包,比如 K 桌面环境 3.5.10 (KDE)、升级 的 GNOME 桌面环境 2.22.2、Xfce 4.4.2 桌面环境、LXDE 0.3.2.1、GNUstep 桌 面 7.3、X.Org 7.3、OpenOffice.org 2.4.1、GIMP 2.4.7、Iceweasel 3.0.6 (去除品牌版本的 Mozilla Firefox)、Icedove 2.0.0.19 (去除品牌版本的 Mozilla Thunderbird)、PostgreSQL 8.3.6、MySQL 5.0.51a、GNU 编 译器集合 (GCC) 4.3.2、Linux 内核 2.6.26 版、Apache 2.2.9、Samba 3.2.5、 Python 2.5.2 和 2.4.6、Perl 5.10.0、PHP 5.2.6、Asterisk 1.4.21.2、 Emacs 22、Inkscape 0.46、Nagios 3.06、Xen Hypervisor 3.2.1 (dom0 及 domU 支持)、OpenJDK 6b11,以及超过 23,000 个其他完全可用的软件包(从 12,000 个源码包编译而成)。

由于集成 X.Org 7.3,X server 可以对绝大多数硬件进行自动配置。新引入 的软件包可以完全地支持 NTFS 文件系统,并且能够直接使用绝大多数多媒体按 键。通过 swfdec 或 Gnash 插件可以支持 Adobe® Flash® 格式的文 件。对笔记本计算机的支持得到了全面提升,比如 CPU 频率自动调节的原生支持。 新加入的几个游戏可用来消磨闲暇时光,包括解谜游戏以及第一人称射击游戏。 还有值得一提的是新增加的 goplay,它是一个图形化游戏管理器,提供 了过滤器、搜索、抓屏以及对 Debian 中的游戏进行介绍等功能。

由 Debian GNU/Linux 5.0 新加入和更新版本的 OpenJDK,GNU Java 编译 器,GNU Java 字节码解释器,Classpath 和其他自由版本的 Sun 的 Java 科技 使我们可以在 Debian 的 main 软件仓库下发布基于 Java 的应用程序了。

系统安全方面的改进有在安装后第一次启动之前就安全所有安全更新、减少标 准安装 setuid root 可执行文件和打开的端口,以及使用 GCC 加强特性编译多 个对安全有严格要求的软件包。其他多种软件也都有特别的改进,比如 PHP 现在 已经使用 Suhosin 的加强补丁编译。

对于非英语母语的用户,包管理系统目前已经支持软件包描述的翻译,如果已 经翻译,它会自动显示用户母语版本的软件包描述。

Debian GNU/Linux 可以用多种介质进行安装,比如 DVD、CD、USB 闪存和软 驱以及网络。GNOME 是缺省的桌面环境,包含在第一张 CD 中。其他桌面环境 — KDE、XFce 或 LXDE — 则可以通过两张新的替代 CD 镜像进行安 装。同样还提供 Debian GNU/Linux 5.0 的多架构安装 CD 和 DVD,用它们可以 从一张光盘上安装多种架构的计算机;同时本发行还提供蓝光光盘,这就让在一张 安装盘上提供一个架构的全部软件成为可能。

除常规的安装,Debian GNU/Linux 也可以直接使用而无需安装。这种特殊的 镜像也称为 live 镜像,可用于 CD、USB 闪存以及多种形式的网络启动。起步阶 段只提供 amd64 和 i386 架构的 Live 镜像。

Debian GNU/Linux 5.0 的安装过程也已经从多个方面进行了改进:在多个其 他改进中,重新加入了对从多张 CD 或 DVD 进行安装的支持,某些设备需要的固 件可以从可移动介质上加载,还支持通过布莱叶显示器进行安装。安装程序的启 动过程同样也得到很多关注:可以在图形界面上选择安装前端和桌面环境,同时 也能选择专家或救援模式。Debian GNU/Linux 的安装系统目前已经被翻译成 63 种语言。

Debian GNU/Linux 现在已经可以通过 bittorrent (推荐使用)、jigdo 或 HTTP 方式下载;更多信息请参见 光盘上的 Debian GNU/Linux。很坑卩个供应商就将开始 提供 DVD、CD-ROM 以及蓝光光盘。

对绝大多数的配置来说,从先前版本即 Debian GNU/Linux 4.0 (代号 Etch) 升级到 Debian GNU/Linux 5.0 可以由 aptitude 包管理工具自动 进行,一定程度上也可以用 apt-get 包管理工具进行。一如往常,Debian GNU/Linux 系统可以平稳无痛地升级,没有任何必须的当机时间,但强烈建议事 先阅读发行注记,以便 了解可能的问题,并获取详细的安装和升级指示。本发行注记将在发行之后的数 周内进行更新,并将翻译成其他语言。
献给
在此特将 Debian GNU/Linux 5.0 Lenny 献给 Thiemo Seufer,他是 一位 Debian 开发者,在2008年12月26日的一场不幸的车祸中去世。Thiemo 通过 多种方式参与了 Debian。他维护着多个软件包并且是 MIPS 的 Debian 移植的主 要支持者。他还是我们内核组及 Debian 安装程序组的成员。他的贡献远远超出 Debian 项目。他还致力于 Linux 内核的 MIPS 移植以及 qemu 的 MIPS 仿真等 工作,同时还参与多个小项目,这里难以一一述及。

我们将永远怀念 Thiemo 的工作、奉献、广泛的技术知识以及同其他人分享的 能力。Thiemo 的贡献不会被遗忘。Thiemo 工作的高标准我们永难企及。
关于 Debian
Debian GNU/Linux 是一个自由操作系统,由遍及世界各地通过互联网协作的 一千多名志愿者开发。Debian 对自由软件的贡献、它的非赢利的天性以及它的开 放式开发模式,都让它在众多 GNU/Linux 发行版中独树一帜。

Debian 项目的关键力量是它的志愿者基础、它对 Debian 社区契约的坚持以 及它对打造最佳操作系统这一承诺的信守。Debian 5.0 是它在这个方向上迈出的 另一重要一步。

联系信息
更多信息,请访问位于 http://www.debian.org/ 的 Debian 网页或发邮件至 <press@debian.org>。
各平台的Release notes:http://debian.org/releases/lenny/releasenotes

Tags: debian, linux

VI命令备份

网上找来的,因为需要在命令行下使用vi,不得己了。。。。人都是逼出来的嘛。

  进入vi的命令

  vi filename :打开或新建文件,并将光标置于第一行首

  vi +n filename :打开文件,并将光标置于第n行首

  vi + filename :打开文件,并将光标置于最后一行首

  vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

  vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

  vi filename....filename :打开多个文件,依次编辑

  移动光标类命令

  h :光标左移一个字符

  l :光标右移一个字符

  space:光标右移一个字符

  Backspace:光标左移一个字符

  k或Ctrl+p:光标上移一行

  j或Ctrl+n :光标下移一行

  Enter :光标下移一行

  w或W :光标右移一个字至字首

  b或B :光标左移一个字至字首

  e或E :光标右移一个字j至字尾

  ) :光标移至句尾

  ( :光标移至句首

  }:光标移至段落开头

  {:光标移至段落结尾

  nG:光标移至第n行首

  n+:光标下移n行

  n-:光标上移n行

  n$:光标移至第n行尾

  H :光标移至屏幕顶行

  M :光标移至屏幕中间行

  L :光标移至屏幕最后行

  0:(注意是数字零)光标移至当前行首

  $:光标移至当前行尾

  屏幕翻滚类命令

  Ctrl+u:向文件首翻半屏

  Ctrl+d:向文件尾翻半屏

  Ctrl+f:向文件尾翻一屏

  Ctrl+b;向文件首翻一屏

  nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

  插入文本类命令

  i :在光标前

  I :在当前行首

  a:光标后

  A:在当前行尾

  o:在当前行之下新开一行

  O:在当前行之上新开一行

  r:替换当前字符

  R:替换当前字符及其后的字符,直至按ESC键

  s:从当前光标位置处开始,以输入的文本替代指定数目的字符

  S:删除指定数目的行,并以所输入文本代替之

  ncw或nCW:修改指定数目的字

  nCC:修改指定数目的行

  删除命令

  ndw或ndW:删除光标处开始及其后的n-1个字

  do:删至行首

  d$:删至行尾

  ndd:删除当前行及其后n-1行

  x或X:删除一个字符,x删除光标后的,而X删除光标前的

  Ctrl+u:删除输入方式下所输入的文本

  搜索及替换命令 :

  /pattern:从光标开始处向文件尾搜索pattern

  ?pattern:从光标开始处向文件首搜索pattern

  n:在同一方向重复上一次搜索命令

  N:在反方向上重复上一次搜索命令

  :s/p1/p2/g:将当前行中所有p1均用p2替代

  :n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代

  :g/p1/s//p2/g:将文件中所有p1均用p2替换

  选项设置

  all:列出所有选项设置情况

  term:设置终端类型

  ignorance:在搜索中忽略大小写

  list:显示制表位(Ctrl+I)和行尾标志($)

  number:显示行号

  report:显示由面向行的命令修改过的数目

  terse:显示简短的警告信息

  warn:在转到别的文件时若没保存当前文件则显示NO write信息

  nomagic:允许在搜索模式中,使用前面不带“”的特殊字符

  nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始

  mesg:允许vi显示其他用户用write写到自己终端上的信息

  最后行方式命令

  :n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下

  :n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下

  :n1,n2 d :将n1行到n2行之间的内容删除

  :w :保存当前文件

  :e filename:打开文件filename进行编辑

  :x:保存当前文件并退出

  :q:退出vi

  :q!:不保存文件并退出vi

  :!command:执行shell命令command

  :n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指

  定n1,n2,则表示将整个文件内容作为command的输入

  :r!command:将命令command的输出结果放到当前行 。

Tags: vi, 常用, 备份