1. 0:返回行首;end :返回行尾或使用$. o:新起一行 ;把光标放在需要寻找配对的括号上,选择%,可以跳到被配对的括号
2. gg:返回文件首;G:返回文件尾;H,跳至当前页页首。L,跳至当前页页未。M,跳至当前页页中间。yw,复制一个单词。
i,在当前字符的左侧开始插入;a,在当前字符的右侧开始插入;I,在当前行行首开始插入;o,在当前行的下一行开始新的一行并在那插入;A,在当前行行尾开始插入;O,在当前行的上一行开始新的一行并在那插入;
3. :set cindent :格式化程序段
4. /函数名 :直接定位到函数位置
5.:set nu :显示行号;
: set nonu 取消行号
6. : alt+1,2,3 : 切换标签页
7. :ctrl+v,进入视图模式,yy:复制一行;y,复制多行;p ,粘贴。(注:这种方式仅限于在单个文件中进 行,如果粘贴至另一个文件,会出现无法复制的现象。是因为它复制在剪贴板上,而不是寄存器或缓冲 区,如果采用分屏的方式则可以)
shift+v :这种模式的选中是长方形的 。
复制粘贴时,有时会出现混乱的格式,可设置:set paste,粘贴完毕再设置:set nopaste即可
8. Tlist :启动taglist; ctrl+} :启动ctags;ctrl+T返回
9. :vsplit :分屏;:vs 文件路径 在新的垂直分屏中打开文件
10. vim -On file1 file2 :分屏打开文件,n是数字,如2,3,4.....;ctrl+ww :切换光标
11. x :删除单个字符; 多行删除 :1,10d
12. diff 文件1 文件2 :比较两个文件的不同之处(参17)
13. touch file.doc ,file.txt :创建文件
openoffice.org file.doc 打开文件
14. ctrl+g 或 :f 显示当前正在编辑的文件名
15. 查找文件中空行: /^\n\{1} ;若想查找连续两行或三行空行,把{}中的数字改写即可
16.ulimit -a 显示目前资源限制的设定,如栈大小
17.vimdiff 文件1 文件2 高亮显示两个文件的不同之处 ; diff -r dir1 dir2 比较两个目录下的文件区别,包含两个目录下文件内容的不同。
18.gg = G 排版文本
19.fsck -y /dev/sdb1 修复磁盘命令
20. alt+ctrl+f1 :进入命令行环境下; alt+ctrl+f7 回到视窗环境 ;startx :回到视窗环境
21. ps -ef 查看进程,ps -ef | grep firefox 查看运行的firefox 情况,如进程号等
22. 打开多种文件的命令,也可打开网址:xdg-open /文件路径/文件名
23.解压iso文件 mount -o loop /yourpath/yourfile.iso /mnt
24.alt+space+x 可使终端最大化、最小化
25.sed -n '5,10p' filename :只查看文件的第5行到第10行。
26.查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名:find .| xargs grep -ri "IBM" -l
27.将一个文件的内容(全部或部分)复制到另一个文件中:vim file1(源) file2(目的) ;在file1中shift+v进入可视模式,gg 并 G 选中全部文本; :n进入下一个文件即file2,p即粘贴即可; :N返回上一个文件
28.ssh loongson@192.168.1.133或ssh -l loongson 192.168.1.133远程登陆对方
29.列出当前文件夹下的所有文件夹及其大小,并按照文件夹大小排序: du -sh * | sort -n
查看文件大小则用命令: ls -lh
30.查看当前文件夹大小: du -sh
31.添加同步文件链接 :ln -s /源路径/源文件名 /目的路径/目的文件名;删除链接 rm /目的路径/目的文件名
32.copy 本地的文件到远程的主机 : scp /home/lab508/(源文件名) loongson@192.168.1.133:/home/loongson/(目的地)
copy远程机器上的文件到本地: scp loongson@192.168.1.133:/home/loongson/(源文件名) /home/lab508(本地)
33. 查看本机cpu信息:cat /proc/cpuinfo ; 查看内存信息: cat /proc/meminfo; 也可以安装工具:hardinfo
34. evince 文件名.pdf ubuntu本来打不开 ( vim /etc/apparmor.d/usr.bin.evince ,在文件尾部添加@{HOME}/.Xauthority rw, 之后/etc/init.d/apparmor restart 但终端显示出错。)怪异的是再次使用evince 时,竟然能用了。
35.firefox www.baidu.com 可直接打开百度
36.tac 文件名 :以相反的次序输出输入,首先输出最后一行(tac的作用与 cat相反)
37.curl www.baidu.com > index.html 下载网页并保存为index.html文件
38.格式转化flv-to-mp3 : mplayer -dumpaudio 国歌.flv -dumpfile 国歌.mp3(这个命令在我机器上不行)
电影音频提取:ffmpeg -i input.avi -ab 128k output.MP3 ,指定了mp3压缩码率为128k
39.查看系统Swap 分区大小:free -m
40.探测目标主机的操作系统:nmap -O 192.168.1.19 或nmap -A 192.168.1.19
41.仅列出指定网络上的每台主机,不发送任何报文到目标主机: nmap -sL 192.168.1.100/24
42.直接连接到只能通过主机B连接的主机A : ssh -t hostA ssh hostB
43.whoami 查看 login 时自己的 username ; 回忆命令,查看历史命令记录:history
44.cp命令实现对目录的复制: cp -r 源目录 目的目录 ;cd - 返回上次访问的目录
45.弹出光驱:eject ;弹入光驱: eject -t
46.统计某文件夹下文件的个数: ls -l |grep "^-"|wc -l
统计某文件夹下目录的个数: ls -l |grep "^d"|wc -l
grep "^-" ,将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d
wc -l,统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于一行信息对应一个文件,所以也就是文件的个数。
47. linux环境下载文本文件(txt格式)常常打开时是乱码,是因为在windows环境中,中文压缩一般为gbk,而在linux环境中为utf8,这就导致了在windows下能正常显示txt文件,而在linux环境下打开则是乱码。解决办法:iconv -f gbk -t utf8 甄嬛传.txt > 甄嬛传.txt.utf8。
打开文件:gedit 甄嬛传.txt.utf8.正常了。
Windows下面查看Linux文件,老是出现乱码,原因是Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8.解决办法:
1.在Linux下查看文件编码格式:
vim FileName
进去之后:set fileencoding
2.用iconv命令将文件转换为UTF-8:
iconv -f GBK -t UTF-8 file1 -o file2
3.再将转换后的文件copy至Windows下即可查看
4.iconv -f utf-8 -t gb2312 main.c>tt.c
iconv: 未知 189 处的非法输入序列
解决办法:加参数-c
iconv -c -f utf-8 -t gb2312 main.c>tt.c
48.终端下输入bc,可以作为计算器进行运算(方便运算浮点数)。bc -q 免去显示版本号计算
49. ls | tee -a output :将ls 的结果输出至终端并追加到output 文件的末尾
50. cat /etc/issue ,cat /proc/version :这两条命令可以查看系统版本
51.统计当前目录下出现的"*.c"文件的代码总行数
find . -name "*.c" |xargs grep -v "^$"|wc -l
如果统计.h文件总行数,可以改为find . -name "*.h" |xargs grep -v "^$"|wc -l
52.使用脚本文件统计当前目录下代码总行数(目录中如果有子文件夹,则子文件夹中的代码无法统计)
#!/bin/sh
echo "the line nurmber of .c is `cat /home/lab509/linshi/repmat/*.c | wc -l`"
echo "the line nurmber of .h is `cat /home/lab509/linshi/repmat/*.h | wc -l`"
53.缩进文本
< 将选中的文本左移一个tab
> 将选中的文本右移一个tab
54. 大小写转换
u 将选中的文本转换成小写形式
U 将选中的文本转换成大写形式
~ 将选中的文本的大小写形式进行互换
55.替换
:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1
:n,$s/str1/str2/g 用字符串 str2 替换自n行至文件尾部中所有出现的字符串 str1
56.打开png文件命令
display 文件名
57.删除所有包含某个字符串的所在行
:g/text/d
58.打开图片命令 display 文件名
59.删除一个单词:dw
60.有些机器无法直接通过cd /mnt访问u盘,可以fdisk -l,查看u盘的盘符,例如u盘符为sdb时,使用命令:
mount -t vfat /dev/sdb /mnt,便可以挂载到机器上了。
61.查找匹配字符串个数
在所有行中查找 字符串 出现的次数
:%s/字符串/&/gn
在m和n行之间查找 字符串 出现的次数
:m,ns/字符串/&/gn
62.
删除文本中不带有pattern的行
:g!/pattern/d
删除带有指定pattern的行
:g/pattern/d
63.
gvim中选中指定列:control+q,然后使用vim中快捷键即可