Fedora 19 vim c语言开发环境

 

1. Fedora 19 竟然没有自带 gcc 和 g++php

sudo yum -y install gcc gcc-c++html

2. 安装 vim cvim 插件:java

sudo yum -y vim cvimnode

3. vim 配置文件 vimrc 的存放位置:python

系统 vimrc 文件: "/vim/vimrc"linux

用户 vimrc 文件: "/home/.vimrc"c++

用户 exrc 文件: "/home/.exrc"shell

系统 gvimrc 文件:"/vim/gvimrc"数据库

用户 gvimrc 文件:"/home/.gvimrc"vim

系统菜单文件:"/vimruntime/menu.vim"

vim 预设值:"/usr/share/vim"

4. 设置终端快捷键:

System Settings --> Keyboard --> Shortcuts --> Custom Shortcuts --> +

在 Name 栏输入 Terminal ,在 Command 栏输入 gnome-terminal ,最后点击 Apply

5. 修改用户主目录下的隐藏文件 .vimrc

 

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 通常设定 
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 设定默认解码 
set fenc=utf-8 
set fencs=utf-8,usc-bom,euc-jp,gb18030,gbk,gb2312,cp936 

" 不要使用vi的键盘模式,而是vim本身的 
set nocompatible 

" history文件中须要记录的行数 
set history=100 

" 在处理未保存或只读文件的时候,弹出确认 
set confirm 

" 与windows共享剪贴板 
set clipboard+=unnamed 

" 侦测文件类型 
filetype on 

" 载入文件类型插件 
filetype plugin on 

" 为特定文件类型载入相关缩进文件 
filetype indent on 

" 保存全局变量 
set viminfo+=! 

" 带有以下符号的单词不要被换行分割 
set iskeyword+=_,$,@,%,#,- 

" 语法高亮 
syntax on 

" 高亮字符,让其不受100列限制 
:highlight OverLength ctermbg=red ctermfg=white guibg=red guifg=white 
:match OverLength '\%101v.*' 

" 状态行颜色 
highlight StatusLine guifg=SlateBlue guibg=Yellow 
highlight StatusLineNC guifg=Gray guibg=White 

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 文件设置 
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 不要备份文件(根据本身须要取舍) 
set nobackup 

" 不要生成swap文件,当buffer被丢弃的时候隐藏它 
setlocal noswapfile 
set bufhidden=hide 

" 字符间插入的像素行数目 
set linespace=0 

" 加强模式中的命令行自动完成操做 
set wildmenu 

" 在状态行上显示光标所在位置的行号和列号 
set ruler 
set rulerformat=%20(%2*%<%f%=\ %m%r\ %3l\ %c\ %p%%%) 

" 命令行(在状态行下)的高度,默认为1,这里是2 
set cmdheight=2 

" 使回格键(backspace)正常处理indent, eol, start等 
set backspace=2 

" 容许backspace和光标键跨越行边界 
set whichwrap+=<,>,h,l 

" 能够在buffer的任何地方使用鼠标(相似office中在工做区双击鼠标定位) 
set mouse=a 
set selection=exclusive 
set selectmode=mouse,key 

" 启动的时候不显示那个援助索马里儿童的提示 
set shortmess=atI 

" 经过使用: commands命令,告诉咱们文件的哪一行被改变过 
set report=0 

" 不让vim发出讨厌的滴滴声 
set noerrorbells 

" 在被分割的窗口间显示空白,便于阅读 
set fillchars=vert:\ ,stl:\ ,stlnc:\ 

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 搜索和匹配 
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 高亮显示匹配的括号 
set showmatch 

" 匹配括号高亮的时间(单位是十分之一秒) 
set matchtime=5 

" 在搜索的时候忽略大小写 
set ignorecase 

" 不要高亮被搜索的句子(phrases) 
set nohlsearch 

" 在搜索时,输入的词句的逐字符高亮(相似firefox的搜索) 
set incsearch 

" 输入:set list命令是应该显示些啥? 
set listchars=tab:\|\ ,trail:.,extends:>,precedes:<,eol:$ 

" 光标移动到buffer的顶部和底部时保持3行距离 
set scrolloff=3 

" 不要闪烁 
set novisualbell 

" 个人状态行显示的内容(包括文件类型和解码) 
set statusline=%F%m%r%h%w\[POS=%l,%v][%p%%]\%{strftime(\"%d/%m/%y\ -\ %H:%M\")} 

" 老是显示状态行 
set laststatus=2 

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 文本格式和排版 
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 自动格式化 
set formatoptions=tcrqn 

" 继承前一行的缩进方式,特别适用于多行注释 
set autoindent 

" 为C程序提供自动缩进 
set smartindent 

" 使用C样式的缩进 
set cindent 

" 制表符为4 
set tabstop=4 

" 统一缩进为4 
set softtabstop=4 
set shiftwidth=4 

" 不要用空格代替制表符 
set noexpandtab 

" 不要换行 
set nowrap 

" 在行和段开始处使用制表符 
set smarttab 

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" CTags的设定 
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 按照名称排序 
let Tlist_Sort_Type = "name" 

" 在右侧显示窗口 
let Tlist_Use_Right_Window = 1 

" 压缩方式 
let Tlist_Compart_Format = 1 

" 若是只有一个buffer,kill窗口也kill掉buffer 
let Tlist_Exist_OnlyWindow = 1 

" 不要关闭其余文件的tags 
let Tlist_File_Fold_Auto_Close = 0 

" 不要显示折叠树 
let Tlist_Enable_Fold_Column = 0 

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" Autocommands 
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 只在下列文件类型被侦测到的时候显示行号,普通文本文件不显示 

if has("autocmd") 
autocmd FileType xml,html,c,cs,java,perl,shell,bash,cpp,python,vim,php,ruby set number 
autocmd FileType xml,html vmap <C-o> <ESC>'<i<!--<ESC>o<ESC>'>o--> 
autocmd FileType java,c,cpp,cs vmap <C-o> <ESC>'<o 
autocmd FileType html,text,php,vim,c,java,xml,bash,shell,perl,python setlocal textwidth=100 
autocmd Filetype html,xml,xsl source $VIMRUNTIME/plugin/closetag.vim 
autocmd BufReadPost * 
\ if line("'\"") > 0 && line("'\"") <= line("$") | 
\ exe " normal g`\"" | 
\ endif 
endif "has("autocmd") 

" F5编译和运行C程序,F6编译和运行C++程序 
" 请注意,下述代码在windows下使用会报错 
" 须要去掉./这两个字符 

" C的编译和运行 
map <F5> :call CompileRunGcc()<CR> 
func! CompileRunGcc() 
exec "w" 
exec "!gcc % -o %<" 
exec "! ./%<" 
endfunc 

" C++的编译和运行 
map <F6> :call CompileRunGpp()<CR> 
func! CompileRunGpp() 
exec "w" 
exec "!g++ % -o %<" 
exec "! ./%<" 
endfunc 

" 可以漂亮地显示.NFO文件 
set encoding=utf-8 
function! SetFileEncodings(encodings) 
let b:myfileencodingsbak=&fileencodings 
let &fileencodings=a:encodings 
endfunction 
function! RestoreFileEncodings() 
let &fileencodings=b:myfileencodingsbak 
unlet b:myfileencodingsbak 
endfunction 

au BufReadPre *.nfo call SetFileEncodings('cp437')|set ambiwidth=single au BufReadPost *.nfo call RestoreFileEncodings() 

" 高亮显示普通txt文件(须要txt.vim脚本) 
au BufRead,BufNewFile * setfiletype txt 

" 用空格键来开关折叠 
set foldenable 
set foldmethod=manual 
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc':'zo')<CR> 

" minibufexpl插件的通常设置 
let g:miniBufExplMapWindowNavVim = 1 
let g:miniBufExplMapWindowNavArrows = 1 
let g:miniBufExplMapCTabSwitchBufs = 1 
let g:miniBufExplModSelTarget = 1

 

 

 

以上引自网络博客

6. 修改 cvim 配置文件:

在终端输入命令:

sudo vim ~/.vim/c-support/templates/Ttemplates

USER MACROS 栏下填入你的相应信息,保存并退出。

在终端输入命令:

sudo vim ~/.vim/c-support/templates/c.comments.template

找到 == comment.file-description == start == == comment.file-description-header == start == 两行,将下面的内容修改为本身想要的头文件,保存并退出。

其中 <CURSOR> 表示新建 c 文件以后,光标的初始位置。

若是是 c++ 文件,请修改 cpp.comments.template 文件。

7. vim 经常使用命令:

 

1、安装和登录命令
1、startx            进入图形界面
2、init 5进入图形界面
3、init 3进入字符界面
4、login                登录
5、poweroff            关机
-p 关闭机器的时候关闭电源
-n 在关闭机器时不一样步数据
-w 不作关机的操做,只是把这个操做记录到日志里
-d 不把关机的信息记录到日志文件里
-f 不调用shutdown
6、shutdown        关机重启
命令格式:shutdown [选项] 时间 [信息]
时间是必要参数,必定要加,能够用now,也能够用+5
信息在关机的时候给用户的信息
-t   这个参数后面须要加数字,好比5,表示在发出关机信号5秒后开始关机
-k  不作真正的关机,只是通知一下全部的用户。
-r  重启计算机
-h  关机后关闭电源
-f  在从新启动的时候跳过fsck(磁盘检查程序)
-F  重启时,忽略fsck程序(同-f同样)
-c  取消已在执行的关机动做
例:#shutdown -k now just kid
#shutdown -h now system shut down now
7、halt                关机,选项同poweroff同样
8、reboot            重启计算机
9、mount            挂载文件系统
umount            卸载文件系统
挂载光盘#mount -t iso9660 /dev/cdrom /mnt/cdrom    或者#mount /mnt/cdrom
卸载光盘#umount /mnt/cdrom
退出光盘#eject
送入光盘#eject -t
挂载软盘   #mount /mnt/floppy
卸载软盘   #umount /mnt/floppy
挂载本地FAT32分区,并使挂载后显示中文
#mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/win
卸载#/umount /mnt/win
挂载U盘或者移动硬盘#mount -o iocharset=utf8 /dev/sda1 /mnt/usb
卸载 #umount /mnt/usb
若是本地语言环境不是utf8,而是gb18030,需使用下面的命令挂载
#mount -o iocharset=gb2312 /dev/sda1 /mnt/usb
挂载一个光盘镜像至本地/mnt/cdrom目录,用下面的命令
#mount -t iso9660 -o loop /tmp/cd.iso /mnt/cdrom
10、linux text            字符界面下安装操做系统的命令
11、linux askmethod        选择不一样方法安装操做系统的命令
2、图形化界面相关命令
1、setup                        系统设置
2、ntsysv                        服务启动设置
3、gdmsetup / gdmconfig        登录设置
4、networkconfig / thizconfig        网络设置
5、gnome-volume-control        音量控制
6、kcontrol                        KDE控制中心
7、kpersonalizer                KDE设置向导
8、xmtr                            网络检测命令
3、信息显示命令
1、time                显示特定指令执行时所需消耗的时间及系统资源等资讯
2、data                显示或设定系统的日期与时间
如果不以加号做为开头,则表示要设定时间,而时间格式为 MMDDhhmm[[CC]YY][.ss],其中 MM 为月份,DD 为日,hh 为小时,mm 为分钟,CC 为年份前两位数字,YY 为年份后两位数字,ss 为秒数#date 081112552006.35
3、cal                显示日历
#cal –m    #cal –s    #cal 2006    #cal 08 2006
4、uptime            提供使用者下面的资讯,不需其余参数:
如今的时间
系统开机运转到如今通过的时间
连线的使用者数量
最近一分钟、五分钟和十五分钟的系统负载
参数:-V 显示版本资讯
5、last                显示系统开机以来或是从每个月初登入者的讯息
6、dmesg            显示系统启动的信息
7、uname            显示系统信息
-m  显示硬件型号
-n   显示主机名
-r   显示内核版本
-S  显示操做系统类型
-V  显示操做系统的版本
-a  显示所有信息
8、id                显示真实和有效的UID和GID
9、hostname        显示或设置系统的主机名
-a  显示主机的别名
-d  显示DNS域名
-F  从指定文件中读取主机名
-i   显示主机的IP地址
10、who或w        显示在线登录用户
-q  显示所有的登录名和登录数
#w   显示系统中当前用户的信息
#w user username   仅显示指定用户的信息
11、whoami            显示用户本身的身份
12、whois            查询域名注册及IP地址相关信息
#whois www.sina.com.cn
小技巧:若是想注册一个域名,能够用whois工具查询一下是否有人注册。
13、whatis            查看命令的解释
#whatis ls
14、whereis            显示系统命令及其文档所在目录
#whereis ls
15、which             显示系统命令所在目录
#which ls
16、stat                显示指定文件的相关信息(含节点内容)
#stat -f /       查看整个文件系统的状况
17、free                显示当前内存和交换空间使用状况
-b   以字节为单位
-m  以MB为单位
18、du                显示指定的文件或目录已使用的磁盘空间的总量
-a 显示对全部文件的统计(含子目录)
-b  输出的结果一字节bytes为单位
-c  只计算目录的总用量
-h  以M为单位   1024kb=1M
-H  以M为单位   1000kb=1M
-s  只显示目录使用空间的总和
19、df                显示文件系统磁盘空间的使用状况
-h  以1024kb=1M计算
-H  以1000kb=1M计算
-t   指定显示分区的类型
-i   显示分区的inode使用状况
20、wc                统计指定文件中的字节数、字数、行数,并将结果显示输出
-c  输出字节统计数
-l   输出换行符统计数
-L  输出最长的行的长度
-w  输出单词统计数
21、ls                显示目录文件
-a显示全部文件(包含隐藏文件)
-l使用长格式显示
-F以符号形式附加文件类别
-R以树状结构显示目录内容 
-d查看目录属性
-i显示每一个文件的inode号
-m全部项目以逗号隔开,并填满整行
-h将列出文件的大小人性化格式输出
-t按最后修改时间顺序列出文件名
-color彩色显示文件
22、cat                显示文本文件内容
-b  显示文件内容的时候显示行数
-n  显示文件内容包括空行
-s  将多个空行合并成一个空行输出
23、tac                反转显示文件内容,后面的行放在前面显示
选项同上
24、head            显示文本文件的前若干行
-n (行数)显示文件的最后指定的行
-b (字节数)显示文件最后字节数里的内容
-q  不输出文件头的内容
-v  输出文件头的内容
25、tail                显示文本文件的后若干行
选项同上
26、more或less    分页显示文本文件内容
-s  将多个空行压缩成一个空行
-p  清楚屏幕后在显示
+行数  直接从给定的行数开始显示
-数字  规定每次显示多少行
27、cut                显示每行从开头算起 num1 到 num2 的文字
# cut –c 0-6 example     ## print 开头算起前 6个字元 
28、pwd            显示当前工做目录
29、locale            显示当前语言环境
30、fc-list            列出系统字体
31、jobs            查看当前终端,当前shell下的后台的进程
32、ps                查看系统中的进程
#ps aux
#ps -elf
33、pstree            将全部行程以树状图显示
34、top                查看系统中实时进程
35、set查看系统变量
36、export            查看环境变量
37、man            查看命令帮助信息
38、info                查看命令帮助信息
39、help            查看命令帮助信息
4、文件处理命令
1、file                显示文件类型
2、mkdir            建立目录
-p  依次建立目录(创建多级目录)
-m  指定目录的权限
3、grep                在指定的文本文件中查找指定的字符串
4、dd                转换及输出数据
#dd if=/dev/hda of=/dev/hdb     硬盘对拷
5、find                查找文件或目录
-name *   根据指定的文件名进行查找
-type *  查找指定类型的文件
类型文件有: 
l  连接
d  目录
f  普通文件
b 块设备文件
c  字符设备文件
s  socket(套接字文件)
p  管道(pipe)文件
-size n [bc]  查找n值大小的文件,默认单位是字节
b=bit
c=kb
例:#find  -size 1500b        #find -size +1500b        #find -size -1500b
查找等于、大与、小于1.5M大小的文件
-user  <用户名>  查找属于指定用户的文件
-group <用户组名>查找属于指定用户组的文件
-newer <文件名>  查找比文件更新的文件
-cmin +n  查找在过去n分钟之内(-)或之外(+)被修改过的文件
-ctime +n  查找在过去n天之内(-)或之外(+)被修改过的文件
-atime +n  查找在过去n天之内(-)或之外(+)被读取过的文件
-amin +n  查找在过去n分钟之内(-)或之外(+)被读取过的文件
-links n  查找n个连接数的文件
6、mv                移动文件或目录,文件或目录更名
-i  出现提示
-v  显示进度
-f  强制移动
-u 只有源文件比目的文件新时才移动
7、diff                比较并显示文件差别的部分
8、comm            比较文件内容
9、ln                创建文件之间的连接
-s  符号连接的选项
-f  强制创建连接
-i  出现提示
-v  显示操做信息
10、rm                删除文件或目录
-r  递归删除
-f  强制删除
-v  删除时显示信息
-i  删除时会有提示确认
11、rmdir            删除空目录
-p  依次删除目录
-v  删除的时候显示信息
12、cp                复制文件或目录
-R  递归复制整个目录里的内容
-f  强制复制
-p 复制完后保持目录的权限值
-i  复制时出现同名会有提示
-v 显示进度
-l  建立硬连接
-u 只有在目的文件比源文件旧时才复制
13、cd                切换目录
#cd    回到用户的主目录
#cd -   回到用户的主目录
#cd ~  回到用户的宿主目录 
#cd ..   转到上一级目录
#cd /   切换到根目录
#cd .   切换到当前目录
14、tar                -f  这个选项是必定要用的,表示使用归档文件
-v 显示进度
-c 创建一个新的tar文件
-z 调用gzip或者gunzip程序
-j 调用bzip2或者bunzip2程序
-t 显示tar打包文件里的内容
-x 解压缩tar文件
-r 追加一个或多个文件到已有的包中
-u 若是文件比打包文件中的新就替换打包中的文件
-k 在解开打包文件时保持原有的文件
-C 指定解包的目的目录
-A 将其余打包中的文件追加到一个打包文件中
-M 将一个包分红多个包,但必须配合-L参数一块儿使用
-get 提取某个文件
-remove -files 打包之后删除文件
-t 进行测试解压缩,不会解压到当前目录
格式:tar  [选项]  生成打包文件名   需打包的源文件
15、compress        压缩命令,生成.z的文件
16、uncompress    解压缩扩展名为.z的文件
17、zip             压缩文件或目录
18、unzip            解压缩扩展名为.zip的文件
19、gzip            压缩命令(不支持对目录进行压缩),生成.gz的文件
20、gunzip或zcat    解压缩.gz的文件
21、bzip2            压缩命令,生成.bz2的文件
22、bunzip2            解压缩命令
23、touch            更改文件的时间标记或建立一个空文件
24、unlink            删除软连接
25、locate            在系统中搜索包含字符串的文件
26、ldd                列出与文件有关的分享函数库
5、系统管理相关命令
1、clear                清楚界面
2、konsole            打开命令终端
3、gnome-terminal    打开命令终端
4、fdisk                修改磁盘分区
-m 帮助
-l  打印已知分区
-d 删除一个分区
-n 新建一个新的分区
-p 打印当前分区表
-w 将新的分区表写入磁盘,而且退出
-t  改变一个分区的系统标识
-q 放弃保存而且退出
5、mkfs                格式化磁盘工具
键入mkfs后,按tab键两次,会显示出不少格式化工具
6、fsck                单用户模式下,检测修复文件系统
例如:#fsck -j /dev/hda1
注:建议不要手动fsck,系统会自动调用
7、quota             显示并限制用户的磁盘用量
8、quotacheck        根据/etc/mtab检查全部非网络文件系统
-a 不能再手动指定检查哪一个分区了
-v  显示过程和结果
-u  检查带有usrquota参数的分区
-g  检查带有grpquota参数的分区
-c建立数据库aquota.usr和aquota.group
-M  把全部分区强制以读写方式检查
-R  检查除了根分区之外的全部分区
9、quotaon            启动quota
-a  打开全部磁盘配额
-v  显示输出结果
-u  指定基于用户的磁盘配额
-g  指定打开基于组的磁盘配额
-p  打印当前状态
10、quotaoff        关闭quota
选项同上
11、edquota            配置限额
-u  用户名
-g  组名
-t  设置宽限时间
12、repquota        查看全部配额
13、at                在指定的时间执行特定的命令
14、atq                查询待执行的任务
15、atrm            删除待执行的任务
16、crontab            设置计划任务
17、lp                打印文件
18、useradd        新建帐号
19、usermod        修改帐号设置
20、userdel            删除帐号
21、groupadd        创建组
22、groupmod        改变组标识符或名称
23、groupdel        删除组
24、kill                对程序下达信号或终止程序
25、nice            以改过的优先级执行程序
26、renice            调整正在执行程序的优先级
27、wget            从指定的网址下载文件
28、md5sum        计算并校验软件MD5码
29、mesg            控制当前所用终端机的写入权限
30、wall            广播信息
31、write            传送信息给其余用户
32、lpq                列出打印机队列的状态
33、lprm            删除正在打印的做业
34、sleep            时间暂停
35、chfn            改变finger所显示的信息
36、chsh            改变用户登录系统时所使用的shell
6、网络操做相关命令
1、ifconfig             设置或显示网络接口
2、ifup                启用网络接口
3、ifdown            关闭网络接口
4、ping                传送ICMPecho的包,用来检查联机状态
5、netstat            查询网络的当前状态
6、route            显示并设置路由
7、traceroute        追踪联机所通过的路由器
8、mtr                是一个既具备ping功能,又具备traceroute功能的命令
8、xmtr                是一个在X windows下执行的命令
9、tcpdump            显示网络上TCP的联机状态
10、telnet            远程联机程序
11、ftp                文件传输
12、rlogin            远程登录主机
13、rcp                远程复制文件或目录
14、ssh                远程加密的联机
15、finger            远端查询主机上的用户信息
16、mail            收发邮件
17、host            查询主机使用的域名
18、nslookup        查询网络名称与地址的对应
7、系统安全相关命令
1、passwd            修改用户密码
2、su                切换并取代该用户的身份
3、sudo                使用指定的用户权限执行程序
4、umask            设置新建文件的权限屏蔽
5、chgrp            改变文件或目录所属的组
6、chmod            改变文件或目录的权限
7、chown            改变文件或目录的拥有者或组
8、chattr            改变文件属性
9、lsattr            列出ext2上的文件属性
10、pswho
8、其它命令
1、bc                 计算器
2、xmms            播放器
3、xine                播放器
9、解压缩命令
.tar 
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是压缩!)
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz 和 .tgz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知
.tar.bz
解压:tar jxvf FileName.tar.bz
压缩:未知
.Z
解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
.rar
解压:rar x FileName.rar
压缩:rar a FileName.rar DirName
.lha
解压:lha -e FileName.lha
压缩:lha -a FileName.lha FileName
.rpm
解包:rpm2cpio FileName.rpm | cpio -div
.deb
解包:ar p FileName.deb data.tar.gz | tar zxf -
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解压:sEx x FileName.*
压缩:sEx a FileName.* FileName
窗体顶端
窗体底端
sEx只是调用相关程序,自己并没有压缩、解压功能,请注意!
gzip 命令

减小文件大小有两个明显的好处,一是能够减小存储空间,二是经过网络传输文件时,能够减小传输的时间。gzip 是在 Linux 系统中常用的一个对文件进行压缩和解压缩的命令,既方便又好用。
语法:gzip [选项] 压缩(解压缩)的文件名该命令的各选项含义以下: 
-c 将输出写到标准输出上,并保留原有文件。-d 将压缩文件解压。-l 对每一个压缩文件,显示下列字段:     压缩文件的大小;未压缩文件的大小;压缩比;未压缩文件的名字-r 递归式地查找指定目录并压缩其中的全部文件或者是解压缩。-t 测试,检查压缩文件是否完整。-v 对每个压缩和解压的文件,显示文件名和压缩比。-num 用指定的数字 num 调整压缩的速度,-1--fast 表示最快压缩方法(低压缩比),-9--best表示最慢压缩方法(高压缩比)。系统缺省值为 6。指令实例: 
gzip *% 把当前目录下的每一个文件压缩成 .gz 文件。gzip -dv *% 把当前目录下每一个压缩的文件解压,并列出详细的信息。gzip -l *% 详细显示例1中每一个压缩的文件的信息,并不解压。gzip usr.tar% 压缩 tar 备份文件 usr.tar,此时压缩文件的扩展名为.tar.gz