![](https://img-blog.csdnimg.cn/202006111626550.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Linux
游走在BUG边缘
only_a_Heroic_car
不为失败找借口,只为成功找出路
展开
-
Ubuntu22 更新内核后终端输入卡顿,最简单的解决方案
终端 卡顿 ubuntu 22 ubuntu22.04 终端输入卡顿 终端卡顿原创 2024-06-25 20:50:53 · 238 阅读 · 0 评论 -
linux ll文件大小显示单位Mb,Gb
linux ls ll 文件大小 M Mb原创 2023-09-22 19:00:00 · 4656 阅读 · 0 评论 -
linux 终端 sort 命令排序
【代码】linux 终端 sort 命令排序。原创 2023-05-23 21:00:00 · 120 阅读 · 0 评论 -
linux 终端/vim 卡死/按键无响应
使用 ctrl + s 导致。其实不只是vim中会这样,只要在终端中使用了ctrl+s都会卡死。因为使用此命令是锁定屏幕,也就是让屏幕暂停输入。所以不会有任何响应。在 linux 终端中使用 vim 进行编辑后,本来想保存。但是不小心使用了 【ctrl+s】。导致按什么键盘都没有反应。vim编辑器里就像卡死一样。ctrl + q :解锁屏幕。原创 2023-05-23 21:00:00 · 1753 阅读 · 0 评论 -
Linux 危险的 rm 命令,替换 trash
linux rm 回收站 trash 安全原创 2022-12-07 19:50:59 · 480 阅读 · 0 评论 -
如何在bash脚本中获取用户名(sudo执行脚本时获取本地用户)
见此链接详细描述,转载自此:https://segmentfault.com/a/1190000018029866${SUDO_USER}原创 2021-12-21 17:33:52 · 2821 阅读 · 0 评论 -
关于 Ubuntu 循环登录界面
问题描述:我的linux一直处于挂起、启动状态,今天不小心关机重启了,然后凉凉,图形界面登录不进去,黑屏然后重新进入图形登录界面。 解决方案:搜索了很多方案,都不靠谱,那我来总结一下经验:1、关于驱动:搜到的方案中很多都提到驱动,但是一般人没人搞驱动。忽略即可,太不靠谱。2、登录用户权限问题:当看到这个方案时,乍一看也许是这个问题,但是真的是这样吗?通过ctrl+alt+F2进入tty2命令行界面,ls -l -a查看文件权限,没毛病啊权限是我本人账户(分享修改账户方法),那么这个方案原创 2021-12-01 16:00:05 · 2606 阅读 · 16 评论 -
linux下编译qt5源码error: unrecognized command line option ‘-fuse-ld=gold’
项目场景:需要在其他环境下使用Qt项目但是Qt5.12.8 linux 只有x64 ,在想要进行x86构建的同时想到需要交叉编译, 于是开始入坑。。。Qt 交叉编译 qtbase源码 (用于生成构建套件)问题描述:本来终于可以构建了,但是在执行configure时遇到错误:error: unrecognized command line option ‘-fuse-ld=gold’ 解决方案:通过configure的help发现,-fuse-ld=gold这个参数是在执行时au原创 2021-12-01 15:45:58 · 1564 阅读 · 0 评论 -
vim多行注释的方法
多行注释:1. 首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式;2. 在行首使用上下键选择需要注释的多行;3. 按下键盘(大写)“I”键,进入插入模式;4. 然后输入注释符(“//”、“#”等);5. 最后按下“Esc”键。...原创 2021-12-01 14:23:28 · 1678 阅读 · 0 评论 -
查看当前编译器支持的C++标准
gcc -E -dM - </dev/null | grep "STDC_VERSION"对应关系如下如果没查到,则默认是c89的标准;#define STDC_VERSION 199901L,则默认支持的是c99标准;#define STDC_VERSION 201112L,则默认支持的c11标准;C ++ 98:__cplusplus是199711LC ++ 11:__cplusplus是201103LC ++ 14:__cplusplus是201402LC ++ 17:__cp原创 2021-12-01 14:20:03 · 1928 阅读 · 0 评论 -
关于linux下ftok创建key的问题
项目场景:在多线程中使用信号量时需要先创建key,通过key去semget信号量。问题描述:在测试时,发现一种异常情况,信号量递增超出系统限制,导致后续创建信号量失败,引发了其他显式的错误。 原因分析:semget函数是通过key来创建的,将key打印发现异常情况引起key值的变化。而key是有ftok创建首先查看ftok函数: #include <sys/types.h> #include <sys/ipc.h> key_t ftok(const原创 2021-11-29 11:23:32 · 603 阅读 · 0 评论 -
semget函数报错,errno设置为28
在linux下运行semget创建信号量时,遇到返回-1,创建失败的问题;一、这个函数是系统函数,只能同过errno来确认实际的错误码,通过strerror打印errno返回No space left on device。难道是系统空间不足?创建信号量的空间不足?二、再去errno.h中查看实际的错误码对应的错误信息ENOSPC,这个字段是什么意思?三、semget函数中有规定自己的错误字段?查看函数手册:查semget函数的man手册:A semaphore set has to be create原创 2021-11-23 14:40:35 · 1390 阅读 · 0 评论 -
linux readelf 查看库的属性-fPIC和32/64版本以及其他信息
前言我们经常编译和使用linux版本库,但是当我们有一堆库时,或者某些库出现问题时,我们如何去查看这些库的详细信息呢?总不能去找对应的负责人然后查看相关的编译记录和说明吧,所以我们需要自己能够简单的查看一些信息。一、readelf是什么?readelf命令,一般用于查看ELF格式的文件信息,常见的文件如在Linux上的可执行文件,动态库(.so)或者静态库(.a) 等包含ELF格式的文件二、readelf可以看什么?readelf很强大,我还没有用到了解它所有的功能。下边我们就先介绍,我会在用原创 2021-08-11 15:04:44 · 2373 阅读 · 0 评论 -
ubuntu移动后找不到网卡,只有本地环回
问题描述:今天在连接数据库的时候ping不同网络了,然后ifconfig发现只有本地环回,没有网卡。 解决方案:一、首先检查网络配置,没有写固定ip为本地;二、重启网络 sudo service network–manager restart;不起作用;三、听说网络有缓存,删除缓存文件…,仍然无用;四、以上都对我无用,于是sudo dhclient ens33#获取ipsudo ifconfig ens33#查看ip五、于是解决了,看结果下面来解释一下,这个命令:dhcl原创 2021-08-06 15:31:50 · 1442 阅读 · 3 评论 -
Linux Qt cannot find -lGL错误
问题描述:将项目移植到linux之后,用Qt编译发现 编译错误cannot find -lGL 原因分析:1、库的问题嘛:首先想到代码中有些头文件或库文件与windows不兼容。于是新建空工程编译发现同样有这个问题;2、Qt问题:我同时装了两个版本Qt,换版本编译仍然编译错误;3、配置或环境问题:也许这个库是linux系统环境库,但是Qt 找不到。于是查找资料发现如下:Qt 默认在 /usr/lib/ 目录下查找动态链接库,但是很多 Linux 发行版将 OpenGL 链接库放在其它目录原创 2021-07-28 17:53:46 · 369 阅读 · 0 评论 -
Linux默认的宏定义查看方法
文章目录前言一、查看GCC宏定义二、查看linux系统宏定义前言Linux中有很多宏定义,那么在我们需要使用Linux宏定义时如何确定Linux中是否包含此宏定义?或者我们自己的宏定义会不会和linux宏定义冲突呢?这时就需要我们能够查看Linux中的现有宏定义。一、查看GCC宏定义终端中输入命令:$ gcc -posix -E -dM - </dev/null二、查看linux系统宏定义$ touch dummy.hxx$ cpp -dM ./dummy.hxx...原创 2021-07-16 10:16:52 · 2037 阅读 · 0 评论 -
Linux 下删除当前目录及子目录下的所有.o文件
一、命令:find . -name '*.o' -type f -print -exec rm -rf {} \;参数:(1) “.” 表示从当前目录开始递归查找;(2) “ -name ‘*.o’ "根据名称来查找,查找所有以.o结尾的文件夹或者文件。(此处可以使用正则表达式匹配目标文件或目录);(3) " -type f "查找的类型为文件;(4) “-print” 输出查找的文件目录名;(5) -exec,-exec选项后边跟着一个所要执行的命令,表示将find出来的文件或目录执原创 2020-09-14 17:54:00 · 3653 阅读 · 1 评论 -
Linux下终端命令链接工程目录下的动态库
今天gcc链接编写的动态库时出错了,首先要搞清楚为什么出错,是命令错误还是路径问题或者是库不对应。ls命令查看当前目录下的动态运行库为libtest.so然后我执行编译命令时链接动态库-L 表示链接动态库的路径-L. 表示动态库在当前路径下-l后边加动态库的名字,应该省略库的lib三个字符,比如链接libhello.so时只需要-lhello即可gcc test.c -o test -L. -ltest编译成功之后运行test文件发现还会报错,提示找不到库?此时有些人就有疑问了,为什么我g原创 2020-08-27 19:03:06 · 475 阅读 · 0 评论 -
CMake编译CMakeLists.txt简单实现
首先编写CMakeLists.txt文件1、cmake版本号 1 cmake_minimum_required(VERSION 3.10) 2、 工程项目名称 2 project(chat_phone) 3、设置编译选项(debug or release) 3 IF(NOT CMAKE_BUILD_TYPE) 4 SET(CMAKE_BUILD_TYPE Release) 5 ENDIF() 6 MESSAGE原创 2020-06-12 19:17:44 · 383 阅读 · 0 评论 -
CMAKE规则及使用方法
https://www.jianshu.com/p/cb4f8136a265转载 2020-06-08 09:07:01 · 187 阅读 · 0 评论 -
Ubuntu中apt-get install:出错 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用) ’
Ubuntu中apt-get install ***时出错无法获得锁1、首先看是否是以管理员命令运行sudo *****,若不是则修改为sudo管理员命令运行2、若还是不可以则删除 sudo rm -r -f /var/lib/dpkg/lock-frontend3、若依然不行则 sudo rm -r -f /var/lib/dpkg/lock综上所述问题即可解决...原创 2020-05-14 09:49:53 · 192 阅读 · 0 评论 -
EditPlus连接ubuntu14访问文件
1、在ubuntu14中安装SSH:"/*终端中输入此命令下载安装SSH:*/ sudo apt-get install openssh-server" 如下:2、查看SSH是否启动"/*终端中输入此命令查看:*/ sudo ps -e |grep ssh" 如下:如果服务没有启动:/终端中输入此命令来启动服务:/ sudo service ssh start3、修改配置文件/...原创 2019-12-02 10:04:50 · 174 阅读 · 0 评论 -
Linux下用vi编码格式是Utf-8打开文件出现中文乱码
出现问题的情况,在windows下编辑好的文件放到linux下打开发现有中文乱码的情况,但是查看vi的编码格式已经是utf-8。下面我们分析一下出现问题的原因: 出现乱码的情况只有一种就是编码格式的问题,既然是编码问题就需要分析编码格式。首先,linux中默认的本地编码为utf-8,fileencoding是latin1;但是文件是在windows下拷贝过来就意味着有风险,此风险是因为在windows下打开过的文档有可能会有格式的变化,或者文档直接是在windows下编辑的,导致编码格式是GBK或者G原创 2020-06-28 14:37:31 · 2314 阅读 · 2 评论 -
Linux下open 设备文件失败
今天在Linux系统下用代码open了一个HID设备,发现报错打开失败,就一个简单的open语句为什么会报错呢?原来USB中的HID设备在根目录下,没有权限是不可以操作里边的文件的,所以运行程序时需要用管理员权限,sudo 可执行程序就没有问题啦...原创 2020-06-28 09:23:29 · 2146 阅读 · 0 评论 -
Linux 下的GDB调试
1、启动GDBgdb test2、查看代码l(list简写): 查看源程序代码,默认显示10行,按回车键继续看10行的。3、设置断点b(break简写) :格式 b+空格+行号,在某行设置断点,eg:b 20;info breakpoints :显示断点信息;delete 断点号n:删除第n个断点;disable 断点号n:暂停第n个断点;enable 断点号n:开启第n个断点;clear 行号n:清除第n行的断点;delete breakpoints:清除所有断点:4、运行程序原创 2020-06-24 19:38:42 · 91 阅读 · 0 评论 -
Linux下VI常用命令
复制n行: nyy剪切n行: ndd粘贴: p光标定位到n行: :n光标定位到起始: gg光标定位到末尾: G原创 2020-06-24 09:45:38 · 153 阅读 · 0 评论 -
Linux下对U盘文件拷贝操作
话不多说,直接贴方法:1、插入U盘,查看连接的设备,fdisk -l,eg: /dev/sda12、挂载U盘,mount /dev/sda1 /mnt3、查看挂载状态,ls /mnt4、查看U盘文件,ls /mnt5、拷贝文件,eg:将u盘文件拷贝出来,cp /mnt/test /home/root6、卸载设备,umount /mnt...原创 2020-06-16 16:13:48 · 3685 阅读 · 1 评论