我的VIM学习笔记

3485阅读 1评论2010-05-30 炙热的雪
分类:

在 X 下复制和粘贴文本只需托黑,就自动进行了复制操作。
~~~~~~~~~~~~~~~~
RPM:RPM 代表 Red Hat 软件包管理器(Red Hat Package manager),它是 Red Hat 建构和发行软件文件的方式。RPM 文件是你可以在 Red Hat Linux 计算机上安装的软件包文件。
~~~~~~~~~~~~~~~~
su 和 su -:命令 su 给你到根账号或系统上其它账号的访问权。当你在用户账号的 shell 内键入 su 来切换到根账号时,你就能够改变重要的系统文件(若不小心,你会损坏它们)。使用 su - 命令使你成为使用根账号 shell 的根用户。登录为根用户时请务必小心。
~~~~~~~~~~~~~~~~
登录后控制台界面后,你可以键入 startx 来启动图形化桌面。
~~~~~~~~~~~~~~~~
要在 shell 提示下创建用户帐号:
打开 shell 提示。
如果你没有登录为根用户,键入命令 su - 然后输入根口令。
在命令行中键入useradd,随后一个空格和你创建的新用户的用户名(譬如,useradd zhangsan)。按 [Enter] 键。通常,用户名是按用户的姓名变化得来的,如 Zhang San 的用户名是 zhangsan。用户帐号名可以 从用户的姓名、简称、或出生地等变化出来。
键入 passwd,随后一个空格和该用户名(譬如,passwd zhangsan)。
在 New password: 提示下为新用户输入一个口令,然后按 [Enter]。
在 Retype new password: 提示下,输入同一口令来确认你的选择。
~~~~~~~~~~~~~~~~
man ls
 
要翻阅说明书页,你可以使用 [Page Down] 和 [Page Up] 键,或使用 [Spacebar] 来向后翻一页,使用 [b] 来向前翻。要退出说明书页,键入 [q]。
要在说明书页中搜索关键字,键入 [/] 和要搜索的关键字或短语,然后按 [Enter]。所有出现在说明书页中的关键字都会被突出显示,允许你快速地阅读上下文中的关键字。
~~~~~~~~~~~~~~~~
rpm -ivh rhl-*.rpm
~~~~~~~~~~~~~~~~
在命令行中键入 exit 或 [Ctrl]-[D],然后按 [Enter] 键。这会注销根帐号,并回到你的用户帐号。
~~~~~~~~~~~~~~~~
要在 shell 提示下关闭计算机,键入以下命令:
halt
~~~~~~~~~~~~~~~~
「从这里开始」屏幕中包括了许多图标,这些图标允许你使用你最喜欢的应用程序;编辑桌面首选项;进入「主菜单」项目;使用服务器配置工具;以及编辑系统设置
~~~~~~~~~~~~~~~~
要挂载软盘,把它插入软盘驱动器,然后在 shell 提示下键入 mount /mnt/floppy/
要卸载软盘,键入umount /mnt/floppy/
~~~~~~~~~~~~~~~~
cp filename /mnt/floppy
~~~~~~~~~~~~~~~~
在 shell 提示下,键入 /usr/bin/gfloppy 启动格式化软盘程序
~~~~~~~~~~~~~~~~
另一种格式化方法(格式化为ext2系统):/sbin/mke2fs /dev/fd0
~~~~~~~~~~~~~~~~
mount /mnt/cdrom
umount /mnt/cdrom
~~~~~~~~~~~~~~~~
要启动“互联网配置向导”,使用下列方法之一:
1、在图形化桌面环境中,点击「主菜单」 => 「系统工具」 => 「互联网配置向导」。
2、在 shell 提示下,键入 internet-druid 命令。
~~~~~~~~~~~~~~~~
DNS 代表域名系统(Domain Name System)。DNS 服务器充当一个互联网的道交图。在你使用互联网的时候,DNS 会告诉你的机器要把流量输送到哪里。 DNS 跟踪 IP(Internet Protocol,互联网协议)地址;每一部连接在互联网上的计算机必须有一个 IP 地址,它是一组独特的类似 2xx.2xx.2x.2 的数字。当你在你的 ISP 处注册登记后,你可能会收到一个或多个 DNS 项目。
~~~~~~~~~~~~~~~~
要启动 gedit,点击「主菜单」 => 「附件」 => 「文本编辑器」。你还可以在 shell 提示下键入 gedit 来启动 gedit
~~~~~~~~~~~~~~~~
Shell 提示文本编辑器

如果你不在使用图形化桌面,并想读取并修改某个文本或配置文件,Red Hat Linux 包括了 vi(发音为 vee-eye)文本编辑器。vi 是一个简单的应用程序。它在 shell 提示内打开,并允许你查看、搜索和修改文本文件。要启动 vi,在 shell 提示下键入 vi。要在 vi 内打开文本文件,在 shell 提示下键入 vi
按照默认配置,vi 在普通模式下打开文本文件,这意味着你可以查看文件,或在文件中运行内建的命令,但是你不能在其中添加文本。要添加文本,按 [i](insert,代表“插入”模式),这个模式会允许你进行所需的修改。要退出插入模式,按 [Esc] 键,vi 就会还原到普通模式。
要退出 vi,按 [:](它是 vi 的“命令”模式),然后按 [q] 和 [Enter] 键。如果你已改变了文本文件,并想保存所做改变,输入 [:],然后键入 [w] 和 [q] 来把改变写入文件并退出程序。如果你意外地改变了文件,并想不保存这些改变而退出 vi,输入 [:],然后键入 [q] 和 [!],这样,退出时就不会保存改变。
关于使用 vi 的更多信息可以通过在 shell 提示下键入 man vi 而得到。
~~~~~~~~~~~~~~~~
PDF(Portable Document Format,可移植文档格式)
~~~~~~~~~~~~~~~~
在桌面环境中,点击「图形」 => 「PDF 查看器」。你还可以在 shell 提示下键入 xpdf 来启动 xpdf
~~~~~~~~~~~~~~~~
要启动 XMMS,点击「主菜单」 => 「声音和视频」 => 「音频播放器」。
要在 shell 提示下启动 XMMS,键入命令 xmms
~~~~~~~~~~~~~~~~
gThumb 可以从你的桌面面板上启动。选择「主菜单」 => 「图形」 => 「gThumb 图像查看器」,或在 shell 提示下键入 gthumb 来启动这个程序。
~~~~~~~~~~~~~~~~
要判定你当前目录在文件系统内的确切位置,请在 shell 提示下键入命令 pwd
~~~~~~~~~~~~~~~~
命令 su 的意思是“substitute users”(代替用户),它允许你暂时以其他用户身份登录。当你只键入 su 命令本身然后按 [Enter] 键,你仍位于自己的登录 shell 中(你的用户的主目录),但是你的身份已变成根用户(又称超级用户)。键入 su - 使你变成带有根登录 shell 的根用户 — 这就如同你原本就以根用户身份登录一样。
~~~~~~~~~~~~~~~~
下面是一个与 ls 一起使用的一些常用选项的简短列表。请记住,你可以通过阅读 ls 的说明书页(man ls)来获得选项的完整列表。
-a — 全部(all)。列举目录中的全部文件,包括隐藏文件(.filename)。位于这个列表的起首处的 .. 和 . 依次是指父目录和你的当前目录。
-l — 长(long)。列举目录内容的细节,包括权限(模式)、所有者、组群、大小、创建日期、文件是否是到系统其它地方的链接,以及链接的指向。
-F — 文件类型(File type)。在每一个列举项目之后添加一个符号。这些符号包括:/ 表明是一个目录;@ 表明是到其它文件的符号链接;* 表明是一个可执行文件。
-r — 逆向(reverse)。从后向前地列举目录中的内容。
-R — 递归(recursive)。该选项递归地列举所有目录(在当前目录之下)的内容。
-S — 大小(size)。按文件大小排序。
~~~~~~~~~~~~~~~~
有时候,你知道某一文件或目录存在,但却不知该到哪里去找到它。你可以使用 locate 命令来搜寻文件或目录。
使用 locate 命令,你将会看到每一个包括搜寻条件的目录或文件。譬如,如果你想搜寻所有名称中带有 finger 这个词的文件,键入:
locate finger
~~~~~~~~~~~~~~~~
cron 任务定时更新 slocate 数据库,该数据库用来给文件位置分类。在操作系统间切换,以及一天工作结束时关机会影响 cron 对数据库的自动更新。
要手工地更新数据库,登录为根用户(在 shell 提示下键入 su ,然后键入你的根口令,接着键入命令 updatedb
~~~~~~~~~~~~~~~~
清除和重设终端:clear
~~~~~~~~~~~~~~~~
有时,你可能会无意地在一个终端窗口中打开一个程序文件或其它非文本文件。一旦你关闭了那个文件,你会发现你键入的文本与显示器上的输出不符合。
在这种情况下,键入 reset 来把终端窗口还原到它的默认值
~~~~~~~~~~~~~~~~
cat 命令还会在屏幕上显示整个文件的内容(譬如,键入 cat filename.txt)。如果文件较长,它会在屏幕上飞快地滚过。要防止这一效果的发生,使用 cat filename.txt | less 命令
~~~~~~~~~~~~~~~~
重导向标准输出:
cat > sneakers.txt
重导向标准输入:
cat < sneakers.txt
~~~~~~~~~~~~~~~~
管道还可以用来只打印一个文件中的某些行。键入:
grep coffee sneakers.txt | lpr
这将会打印 sneakers.txt 文件中提到“coffee”这个词的每一行
~~~~~~~~~~~~~~~~
你可以使用 head 命令来查看文件的开头部分。此项命令是:
head
~~~~~~~~~~~~~~~~
与 head 命令恰恰相反的是 tail 命令。使用 tail 命令,你可以查看文件结尾的十行。这有助于查看日志文件的最后十行来阅读重要的系统消息。你还可以使用 tail 来观察日志文件被更新的过程。使用 -f 选项,tail 会自动实时地把打开文件中的新消息显示到屏幕上。例如,要活跃地观察 /var/log/messages,以根用户身份在 shell 提示下键入以下命令:
tail -f /var/log/messages
~~~~~~~~~~~~~~~~
grep 命令对于在文件中查找指定的字串很有用途。例如,如果你想在 sneakers.txt 文件中查找每一个提到“coffee”的地方,你可以键入:
grep coffee sneakers.txt
你就会看到文件中带有“coffee”的每一行。
 窍门
  除非另有说明,grep 搜寻是区分大小写(case sensitive)的。这意味着搜寻 Coffee 与搜寻 coffee 不同。在 grep 的选项中有 -i 这一项,它会允许你在搜寻文件时不区分大小写
~~~~~~~~~~~~~~~~
要阅读关于通配符和正则表达式的详情,请看一看 bash 的说明书页(man bash)。请记住,你可以把这个文件存为一个文本文件,方法是键入 man bash | col -b > bash.txt 命令。然后,你便可以使用 less 或 vi(vi bash.txt)来打开并阅读该文件。如果你想打印该文件,请留意它的篇幅很长
~~~~~~~~~~~~~~~~
通过在 shell 提示下键入 env 命令,我们会看到控制命令行历史大小的环境变量。写有 HISTFILESIZE=500 的那一行显示了 bash 将会储存的命令数量
~~~~~~~~~~~~~~~~
要不使用箭头键或翻阅历史文件而找到其中的命令,使用 grep 这个功能强大的搜索工具(请参阅第 13.11.3 节)。下面介绍了如何快速地寻找一个前面已用过的命令:假设你在搜寻一个类似于 cat sneak 什么的命令。你用过了那个命令,你以为它可能还在你的历史文件中。在 shell 提示下键入:
history | grep sneak
~~~~~~~~~~~~~~~~
三组是:文件的所有者,文件所属的组群,和“其他人”,这是前面没有包括的用户和组群。
-    (rw-)   (rw-)   (r--) 1 test test
|        |          |       |
类型  所有者  组群  其他人
第一个项目指定文件类型,它可以显示以下几种:
d — 目录
-(短线)— 常规文件(而不是目录或链接)
l — 到系统上其它位置的另一个程序或文件的符号链接
在第一个项目之后的三组中,你可以看到下面几种类型:
r — 文件可以被读取
w — 文件可以被写入
x — 文件可以被执行(如果它是程序的话)
~~~~~~~~~~~~~~~~
现在,键入下面的命令:
chmod o+w sneakers.txt
o+w 命令告诉系统你想给其它人写入文件 sneakers.txt 的权限

通过键入 go-rw,你在告诉系统删除文件 sneakers.txt 中组群和其它人的读取和写入权限
chmod go-rw sneakers.txt

通过添加 -R 选项,你可以为整个目录树改变权限
~~~~~~~~~~~~~~~~
下面是一个速记符号含义的列表:
身份
u — 拥有文件的用户(所有者)
g — 所有者所在的组群
o — 其他人(不是所有者或所有者的组群)
a — 每个人或全部(u、g、和 o)
权限
r — 读取权
w — 写入权
x — 执行权
行动
+ — 添加权限
- — 删除权限
= — 使它成为唯一权限
~~~~~~~~~~~~~~~~
譬如,键入:
chmod a-x tigger
来删除每个人进入tigger目录的权限
~~~~~~~~~~~~~~~~
.png — PNG 图像文件(Portable Network Graphic 的简写,可移植网络图形)
~~~~~~~~~~~~~~~~
14.2.1. 压缩的和归档的文件
.bz2 — 使用 bzip2 压缩的文件
.gz — 使用 gzip 压缩的文件
.tar — 使用 tar(tape archive,磁带归档的简写)压缩的文件,又称 tar 文件
.tbz — 用 tar 和 bzip 压缩的文件
.tgz — 用 tar 和 gzip 压缩的文件
.zip — 使用 ZIP 压缩的文件,在 MS-DOS 应用程序中常见。多数为 Linux 压缩的文件使用 gzip 压缩,因此 Linux 文件中的 .zip 归档较少见。

14.2.2. 文件格式
.au — 音频文件
.gif — GIF 图像文件
.html/.htm — HTML 文件
.jpg — JPEG 图像文件
.pdf — 文档的电子映像;PDF 代表 Portable Document Format(可移植文档格式)
.png — PNG 图像文件(Portable Network Graphic 的简写,可移植网络图形)
.ps — PostScript 文件,为打印而格式化过的文件
.txt — 纯 ASCII 文本文件
.wav — 音频文件
.xpm — 图像文件

14.2.3. 系统文件
.conf — 一种配置文件。配置文件有时也使用 .cfg。
.lock — 锁(lock) 文件;用来判定程序或设备是否正在被使用
.rpm — Red Hat 用来安装软件的软件包管理器文件

14.2.4. 编程和脚本文件
.c — C 程序语言的源码文件
.cpp — C++ 程序语言的源码文件
.h — C 或 C++ 程序语言的头文件
.o — 程序的对象文件
.pl — Perl 脚本
.py — Python 脚本
.so — 库文件
.sh — shell 脚本
.tcl — TCL 脚本
~~~~~~~~~~~~~~~~
譬如,你找到了一个叫做 saturday 的文件,它没有扩展名。使用 file 命令,你就可以判定这个文件的类型:
file saturday
~~~~~~~~~~~~~~~~
归档文件不是压缩文件,但是压缩文件可以是归档文件
~~~~~~~~~~~~~~~~
要启动 文件打包器,点击「主菜单」 => 「附件」 => 「文件打包器」。你还可以从 shell 提示下键入 file-roller 来启动文件打包器。
~~~~~~~~~~~~~~~~
zip -r filename.zip filesdir
在这个例子里,filename.zip 代表你创建的文件,filesdir 代表你想放置新 zip 文件的目录。-r 选项指定你想递归地(recursively)包括所有包括在 filesdir 目录中的文件
~~~~~~~~~~~~~~~~
tar 使用的选项有:
-c — 创建一个新归档。
-f — 当与 -c 选项一起使用时,创建的 tar 文件使用该选项指定的文件名;当与 -x 选项一起使用时,则解除该选项指定的归档。
-t — 显示包括在 tar 文件中的文件列表。
-v — 显示文件的归档进度。
-x — 从归档中抽取文件。
-z — 使用 gzip 来压缩 tar 文件。
-j — 使用 bzip2 来压缩 tar 文件。
~~~~~~~~~~~~~~~~
要使用 touch 命令来创建文件,在 shell 提示下键入以下命令:
touch <文件名>
~~~~~~~~~~~~~~~~
cp <源> <目标>
-i — 互动。如果文件将会覆盖你的目标中的文件,它会提示你确认。这个选项很实用,因为它可以帮助你避免犯错。
-r — 递归。与其一个一个地复制所有指定的文件和目录,这个选项会复制整个目录树、子目录及其它。
-v — 详细。向你显示文件的复制进度。
~~~~~~~~~~~~~~~~
mv 的常见选项包括:
-i — 互动。如果你选择的文件会覆盖目标中的现存文件,它会提示你。这是一个实用的选项,因为它象 cp 中的 -i 选项一样,会给你一个确认替换已存文件的机会。
-f — 强制。它会超越互动模式,不提示地移动文件。除非你知道自己在干什么,这个选项很危险。在你对系统信心十足之前,请谨慎使用这个选项。
-v — 详细。显示文件的移动进度。
~~~~~~~~~~~~~~~~
mv 的常见选项包括:
-i — 互动。提示你确认删除。这个选项可以帮助你避免误删文件。
-f — 强制。代替互动模式,不提示地删除文件。除非你知道自己在干什么,使用这个选项通常不是明智之举。
-v — 详细。显示文件的删除进度。
-r — 递归。将会删除某个目录及其中所有的文件和子目录。
要使用 rm 命令来删除文件 piglet.txt,键入:
rm piglet.txt
~~~~~~~~~~~~~~~~
要使用 rm 来删除目录,你必须指定 -r 选项
另一个比使用 rm 更安全的删除目录的命令是 rmdir 命令。这个命令不允许你使用递归删除,因此不能删除包含文件的目录
~~~~~~~~~~~~~~~~

上一篇:没有了
下一篇:怎样 grep tab

文章评论