使⽤linux编译器的快捷键
1、⽂本按语法对齐:gg=G
2、查看man配置:man xx
例如:man  pthread_mutex
man 7 ip //第7卷中ip⾥⾯可以到struct sockaddr_in
man 2 accept
3、vi mian.c +30    //直接转到第30⾏
4、nc 127.0.0.1 8888  //net connect ⽬标主机ip 和端⼝号
⽹络测试时,当做客户机,使⽤该命令进⾏测试,可以省略了客户端程序的编写。
5、查看if对应的两边⼤括号,选中⼀边{---->按%
6、shift+k  //查看系统函数的定义或者使⽤⼤写K也可以。或者使⽤esc  :!man  2 socket
7、同时⽤vi打开两个⽂件:先⽤vi打开某⼀个⽂件,然后按esc --> :vsp 新⽂件  保存多个⽂件⽤:wqall
:vsp  直接输⼊这个的话,是重新打开了当前⽂件
8、查看端⼝号 netstat -apn | grep 端⼝号
这个命令,经常⽤来查看我们绑定的端⼝号的状态是listen或是established,即,listen时,表⽰服务器程序启动;
established态,表⽰有客户端连接。
当不知道端⼝号是多少的时候,可以通过netstat -an 来查看所有的端⼝号的状态。
9、使⽤fgets()函数,backspace会被当做字符输⼊,此时使⽤ctrl+backspace即可删除掉错误字符。
10、date:查看当前⽇期和时间
10、kill -l 查看所有的信号  man 7 signal  查看详细说明
11、gdp调试:
段错误调试
1)通过gcc  -g test.c -o test  编译会⽣成core⽂件。
2)gdb 进程名
3)run  //停⽌的位置为段错误(gdb通过core⽂件来查验到)
12、使⽤shell打开⽂件的时候,想查看函数配置⽅法: 先esc 再:!man lseek    (前⾯有:!)
13、netstat -an  查看所有与本地计算机建⽴连接的IP 、proto(连接⽅式)、local address(本地连接地址)、foreign address(和本地建⽴连接的地址)、state(当前端⼝状态)
netstat -a IP地址  //查看该ip的相关信息
netstat -an|grep 9600  //只显⽰连接该端⼝号的连接
14、id  查看⽤户id,同时也能查看当前登录的⽤户名
15、$PATH  查看环境变量配置,为了在任意⽬录下可执⾏程序都能执⾏,我们会设置环境变量;实际中,我们可以通过环境变量来判断配置了哪些程序。
16、cat ⽂件  当只需要查看⽂件内容的时候,⽤cat命令最好,这样可以避免vim命令打开⽂件的繁琐
操作。
17、df -h (东风)以GB,MB的形式查看磁盘⽬录⼤⼩
18、alias  ll ='ls -l'    给命令ls -l 起了个别名ll,简单的名,⽅便以后使⽤
19、find  路径 -name ‘⽂件名’  //⽤来查⽂件的,路径放在find之后,
20、grep  -r  “字符串内容”  路径  //⽤来⽂件中的内容的,路径放在末尾
21、ulimit  -a :查看资源的上限,⽐⽅说栈的最⼤为8192kb,open file的最⼤个数默认为1024
22、ps -ef  :查看进程的
23、vim中查相关内容
按”/“键,在状态栏(也就是屏幕左下脚)就出现了 “/” 然后输⼊你要查的关键字敲回车就可以了。
到相关⽂字以后:
(1)按下⼩写n,向下查
(2)按下⼤写N,向上查
将光标定位的某⼀⾏---->查错误时,定位到错误的地⽅。
:⾏号
24、n dd    --->删除或剪切n⾏
25、n yy    ----->复制n⾏
26、p  ---当前⾏的下⾯复制;P  当前⾏的上⾯复制。
27、u  撤销上⼀步操作
28、ctrl + r---->u的反操作,u了1次,就可以通过ctrl+r 来恢复1次,u了n次,就可以ctrl+r n次恢复。。
28、touch 命令创建新⽂件
或者直接    vim  ⽂件名    也能创建⽂件。
29、ls -la    ---->显⽰包含隐藏的所有⽂件
linux重定向ls  -lh  ---->以MB等形式显⽰ ⽂件
30、du -h filename 显⽰⽂件的⼤⼩,也可以⽤ls -lh 命令实现(显⽰的⼤⼩不同?)
31、>fillename  清空⽂件夹  或者使⽤  true>filename
32、echo "hello world" > filename  向⽂件中写⼊helloworld
ls -lh >filename  将当前⽬录下的内容重定向到filename中
33、which ls  ->使⽤which命令查可执⾏程序的位置;//查ls的位置
which which  -->查which命令的位置
当系统环境相同时,直接拷贝可执⾏程序到别的电脑中,就可以直接使⽤,因为ls.mv 等命令实际上也是可执⾏程序。
34、vim中同时打开多个⽂件,分屏显⽰⽂件
1)vim  file1.c file2.c--->同时打开了2个⽂件,但是当前只能看到⼀个⽂件,需要使⽤:n切到下⼀个⽂件,:N切换到上⼀个⽂件;:qall 同时退出所有⽂件
2)上述⽅法不能同时看多个⽂件,我们想左右屏或上下屏同时看到两个⽂件:
打开某⼀个⽂件 vim file1.c
:split 上下分屏,不带⽂件名的话,会将当前⽂件复制到另⼀个竖屏中;
:vsplit 左右分屏,不带⽂件名的话,会将当前⽂件复制到另⼀个横屏中;
:split file2.c 与file1.c 竖屏显⽰
:vsp file2.c  与file.c横屏显⽰
ctrl+ww  多个屏幕间的切换
Ctrl+w+⽅向键——切换到前/下/上/后⼀个窗⼝(不太好⽤)
多屏显⽰的优点:可以使⽤ pp  y在多屏之间进⾏复制粘贴。
35、输⼊某个命令的前⼏位,然后按两次tab,会显⽰所有的相关命令(仅限于命令)
36、vim file.sh  后,是⽆可执⾏权限的,需要增加可执⾏权限:
chmod  a+x  file.sh      都具有可执⾏
去掉可执⾏权限
chmod  a-x file.sh
也可以省去a不写;
37、两个命令同时使⽤:
cd ..;ls -l  ----->打印了上级⽬录中的内容,且回到了上级⽬录
(cd ..;ls -l)------->打印了上级⽬录中的内容,但是还在当前⽬录。
38、将终端清屏 clear 命令或 ctrl + l
ctrl +u 将光标前的命令清除;------>故要清除整个命令,需要先ctrl+e
ctrl+a 将光标定位到命令开始位置
ctrl+e将光标定位到命令结尾位置
39、查看登录的⽤户名  w    或者  whoami  //当su root之后,w命令显⽰的还是最初登录的⽤户名;hostname:查看主机名----->root@ubuntu:  ubuntu就是主机名。//区别于⽤户登录名
使⽤ping 命令,当不知道ip的时候,ping 主机名也是可以的,此时会显⽰主机对应的ip.
40、使⽤history  查看曾输⼊终端的命令
使⽤!⾸列数字        ------>执⾏原命令
例如:
history
!2007
41、vi中替换⽂本
:%s/原串/⽬标串/g            ------>/g 表⽰⼀⾏有多次出现的替换。
42、top 命令查看进程cpu,mem占有率
也可以先 ps -ef|grep 进程名;  top -p  进程号    ----------->查看某⼀进程的cpu,mem占有率。
(详细参考)
43、man⼿册的使⽤
man  man  :查看man⼿册
第⼀章是基本命令 man 1 ls
第⼆章是标准系统调⽤
第三章是标准库函数  man 3  fopen
第7章是机制  :man 7 socket    man 7 tcp
44、gcc - E test.c  //预处理---->只添加了-E参数,可以将.c中的宏全部替换,此功能可以查看某个函数的模样,其实是否是个宏。
45、diff ⽂件1 ⽂件2  //⽐较两个⽂件是否相同
46、errno:全局变量,存储当前出错信息,要及时打印,否则会被覆盖。
信息位于:
/usr/include/asm-generic/errno    errno.h  errno-base.h
fprintf(stderr,"%d",errno);
47、当.c⽂件报错在第n⾏时,在vim中:n回车,光标会定位在第n⾏。
48、vim中光标跳到⽂件⾸ gg
跳到⽂件尾 G
跳到当前⾏⾸ home键
跳到当前⾏尾 end键
49、vim中按照ctrl键,在拖动⿏标选中代码,此时不会选中⾏号,Qt中是alt键
50、:set nu  --显⽰⾏号
51、ll -t 是按时间降序排列;
ll -t | tac 是按时间升序排列
52、top⽤来查看cpu及内存的使⽤情况。
top -p 进程号    --------->⽤来查看某个进程的执⾏情况。
53、查看⽂件夹下有多少个⽂件
ls | wc -l    //实际⽂件个数。
ls -l |wc -l ⽐上述命令⼤1,是包含了本⾝的⽬录吗?

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。