Linux常用命令
1、查找进程
1 |
|
grep是过滤,其他命令里面的同理。
2、查看网络端口占用
1 |
|
3、查看进程占用cpu和内存
1 |
|
4、挂载u盘或共享文件夹
挂载共享文件夹
1
2
3mkdir dir /home/username/SharedFloder #linux上的共享文件夹
sudo chmod 777 /home/username/SharedFloder #给目录读写执行权限
sudo mount -t vboxsf WinFloder /home/username/SharedFloder #临时挂载挂载u盘
1
2
3
4fdisk -l #查看u盘设备(假设为sdc1)
mkdir /mnt
mount /dev/sdc1 /mnt
umount /dev/sdc1 #卸载u盘
5、apt用法
1 |
|
6、vim常用快捷键
跳转指定行数 :n
跳转文件末尾 G
搜索文件内容 :/content
查找下一个搜索到的内容 n
查找上一个搜索内容 N
剪切行 dd
粘贴 p
复制行 yy
复制指定内容 v进入可视化,选中指定内容,y复制
批量添加注释 ctrl+v进入块可视化,选中需要注释行,按大写I开始插入,在首行添加注释符号#或者//,然后Esc,就会自动注释所有选中行
批量取消注释 ctrl+v进入块可视化,选中需要注释行(不需要选中最后一行)的注释符号,不要选中其他内容,就是选中第一列注释符号,按d删除,按esc退出
撤销操作 u
恢复上一步被撤销的操作 ctrl+r
7、dpkg
查看包的版本信息
1
dpkg -l package
查看包的文件
1
dpkg -L package
查看文件对应的包
1
dpkg -S filename
8、xprop
查看窗口进程
1
xprop #执行完之后点击窗口就会获取窗口信息
9、proc
查看进程的命令行参数
1
cat /proc/ID/cmdline #ID是指进程id,Linux一切皆文件
查看进程的环境变量
1
cat /proc/ID/environ #Qt在Linux上很多bug就是因为环境变量导致的
查看进程的内存结构
1
cat /proc/ID/maps
10、GDB和SSH远程调试
代码在别人的机器上发生异常,这时候需要远程调试,首先需要连接对方机器:
1 |
|
调试代码gdb:
1 |
|
大多情况下,发布的程序都是没有调试信息的,也就是看不到具体异常在哪里发生,这时候可以安装程序对应的dbgsym包,这是程序打包时一起产生的调试信息包。
11、apt包管理冲突解决
当安装一个包发生错误时,此时该包处于一种half-install(半安装)状态,如果继续使用apt安装或者卸载其他包时,dpkg会尝试继续处理上次为安装完成的包,导致后面的操作也会失败,截图示例如下:
上图是在卸载toshibaest2822am时,因为上次toshiba-est2822amf-cups没有安装完成所以继续安装,但是又有问题,解决办法就是去掉dpkg的包状态文件里面的关于toshiba-est2822amf-cups的整段信息,然后重新卸载toshibaest2822am即可。dpkg的包状态文件是/var/lib/dpkg/status。
12、readelf查看二进制信息
file命名无法查询静态库的二进制信息,可以通过此命令
1 |
|