vim/linux--快捷键

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中快捷键即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值