使⽤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小时内删除。
发表评论