Linux
文章平均质量分 84
Adenialzz
Keep Learning.
展开
-
Linux命令行及各常用工具代理设置
Linux命令行及各常用工具代理设置原创 2022-06-11 22:01:59 · 4003 阅读 · 0 评论 -
应该知道的LINUX技巧
应该知道的LINUX技巧转自:https://coolshell.cn/articles/8883.html这篇文章来源于Quroa的一个问答《What are some time-saving tips that every Linux user should know?》—— Linux用户有哪些应该知道的提高效率的技巧。我觉得挺好的,总结得比较好,把其转过来,并加了一些自己的理解。 首先,我想告诉大家,在Unix/Linux下,最有效率技巧的不是操作图形界面,而是命令行操作,因为命令行意味着自转载 2022-05-26 21:56:27 · 125 阅读 · 0 评论 -
shell if判断和for循环常见写法
shell if判断和for循环常见写法转自:Shell中for循环的几个常用写法Shell中if 条件判断总结if常见写法一、if的基本语法:if [ command ];then 符合该条件执行的语句elif [ command ];then 符合该条件执行的语句else 符合该条件执行的语句fi二、文件/文件夹(目录)判断[ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。[ -c FILE ] 如果 FILE 存在且是一个字特殊文件则转载 2022-05-15 15:54:52 · 1690 阅读 · 0 评论 -
ssh免密登录配置方法及配置
ssh免密登录配置方法及配置直接上步骤,记我们本机为机器A,而机器B、机器C等是我们的服务器,我们要配置的是A到B、C等的 ssh 免密登录。1 在机器A上生成秘钥对ssh-keygen会得到输出:Generating public/private rsa key pair.Enter file in which to save the key (/Users/adenialzz/.ssh/id_rsa):这里是问我们要对本次生成的秘钥的命名,这里注意:如果仅需要配置连接一台机器(包括原创 2022-04-04 16:39:03 · 17380 阅读 · 0 评论 -
Linux apt命令
Linux apt命令及其与apt-get的关系转自:https://blog.csdn.net/taotongning/article/details/82320472、https://www.runoob.com/linux/linux-comm-apt.htmlapt(Advanced Packaging Tool)是一个在 Debian 和 Ubuntu 中的 Shell 前端软件包管理器。apt 命令提供了查找、安装、升级、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。a转载 2022-03-06 18:08:02 · 214 阅读 · 0 评论 -
Ubuntu PPA 使用指南
Ubuntu PPA 使用指南转自:https://zhuanlan.zhihu.com/p/55250294一篇涵盖了在 Ubuntu 和其他 Linux 发行版中使用 PPA 的几乎所有问题的深入的文章。如果你一直在使用 Ubuntu 或基于 Ubuntu 的其他 Linux 发行版,例如 Linux Mint、Linux Lite、Zorin OS 等,你可能会遇到以下三种神奇的命令:sudo add-apt-repository ppa:dr-akulavich/lighttabl转载 2022-03-06 15:12:00 · 671 阅读 · 0 评论 -
Linux命令行性能监控工具大全
Linux命令行性能监控工具大全作者:Arnold Lu原文:https://www.cnblogs.com/arnoldlu/p/9462221.html关键词:top、perf、sar、ksar、mpstat、uptime、vmstat、pidstat、time、cpustat、munin、htop、glances、atop、nmon、pcp-gui、collectl。01-toptop是最常用的查看系统资源使用情况的工具,包括CPU、内存等等资源。这里主要关注CPU资源。1.1 /pr转载 2022-01-06 12:02:59 · 1170 阅读 · 0 评论 -
cmake find_package路径详解
cmake find_package路径详解转自:https://zhuanlan.zhihu.com/p/50829542经常在Linux下面写C++程序,尤其是需要集成各种第三方库的工程,肯定对find_package指令不陌生。这是条很强大的指令。可以直接帮我们解决整个工程的依赖问题,自动把头文件和动态链接文件配置好。比如说,在Linux下面工程依赖了OpenCV,只需要下面几行就可以完全配置好:add_executable(my_bin src/my_bin.cpp)find_packag转载 2021-12-20 17:36:50 · 6030 阅读 · 0 评论 -
Linux下C/C++程序编译链接加载过程中的常见问题及解决方法
Linux下C/C++程序编译链接加载过程中的常见问题及解决方法1 头文件包含的问题报错信息该错误通常发生在编译时,常见报错信息如下:run.cpp:2:10: fatal error: dlpack/dlpack.h: No such file or directory #include <dlpack/dlpack.h> ^~~~~~~~~~~~~~~~~compilation terminated.头文件包含的问题是新手常常会遇到的问题,在这里,我们要先原创 2021-12-16 20:51:23 · 3862 阅读 · 0 评论 -
关于ubuntu自定义service服务时找不到/usr/lib/systemd/system目录的问题
关于ubuntu创建service服务时找不到/usr/lib/systemd/system目录的问题问题我们知道在 systemd 取代了 init 而成为广大 Linux 系统中 PID 为1的守护进程之后,Linux 中的服务(service)主要有 systemd 命令组来实现。在大多数发行版 Linux 中想要添加自己的自定义服务,需要在 /usr/lib/systemd/system 目录下创建自定义的 .service 文件。但是,在 ubuntu 18.04 下,笔者却没能找到这个文件。原创 2021-12-14 19:36:21 · 7741 阅读 · 2 评论 -
Systemd 入门教程:实战篇
Systemd 入门教程:实战篇转自:https://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-part-two.html作者: 阮一峰日期: 2016年3月 8日上一篇文章,我介绍了 Systemd 的主要命令,今天介绍如何使用它完成一些基本的任务。一、开机启动对于那些支持 Systemd 的软件,安装的时候,会自动在/usr/lib/systemd/system目录添加一个配置文件。如果你想让该软件开机启动,就执行下面的命令(以ht转载 2021-12-14 17:07:12 · 89 阅读 · 0 评论 -
Systemd入门教程:命令篇
Systemd入门教程:命令篇转自:http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html作者: 阮一峰日期: 2016年3月 7日Systemd 是 Linux 系统工具,用来启动守护进程,已成为大多数发行版的标准配置。本文介绍它的基本用法,分为上下两篇。今天介绍它的主要命令,下一篇介绍如何用于实战。一、由来历史上,Linux 的启动一直采用init进程。下面的命令用来启动服务。$ sudo /etc/转载 2021-12-14 17:04:21 · 120 阅读 · 0 评论 -
crontab用法与实例
crontab用法与实例本文基于 ubuntu 18.04在Linux系统的实际使用中,可能会经常碰到让系统在某个特定时间执行某些任务的情况,比如定时采集服务器的状态信息、负载状况;定时执行某些任务/脚本来对远端进行数据采集等。这里将介绍下crontab的配置参数以及一些使用实例。crontab配置文件Linux下的任务调度分为两类:系统任务调度和用户任务调度。Linux系统任务是由 cron (crond) 这个系统服务来控制的,这个系统服务是默认启动的。用户自己设置的计划任务则使用cron原创 2021-12-14 16:17:58 · 2998 阅读 · 0 评论 -
Linux free 命令详解
Linux free 命令详解free 命令用来查看系统中已用的和可用的内存。命令选项及输出简介关于各种命令的功能和命令选项,还是推荐英语比较好的同学直接看手册 RTFM:man free。这里简单总结一下一些重点:功能及输出简介free 命令显示系统中可用和使用的物理内存和交换内存的总量,以及内核所使用的缓冲区 (buffers) 和缓存 (caches) 。通过解析 /proc/meminfo 收集信息。显示的列包括:total:所有的内存used:使用的内存free:未使用的内存s原创 2021-12-11 19:59:28 · 425 阅读 · 0 评论 -
常见的各种shell及其区别
常见的各种shell及其区别引子for((i=1;i<=10;i++)); do echo $(expr $i \* 3 + 1); done 网上搜到的 shell for循环脚本,别人都能正常运行,我却报错: Syntax error: Bad for loop variable究竟是怎么回事呢?shell简介Shell 既是一种脚本编程语言,也是一个连接内核和用户的软件。在 Linux 发展的早期,唯一能用的工具就是 Shell,Linux 用户都是在 Shel原创 2021-12-08 21:34:00 · 6877 阅读 · 0 评论 -
Linux命令行下感叹号的几个用法
Linux命令行下 " ! " 的几个用法! 在大多数编程语言中表示取反的意思,但是在命令行中,他还有一些其他的神奇用法。熟练掌握这些用法,可以大大提高我们日常命令行操作的效率。1 执行历史命令!!! 在命令行中可以用来执行历史命令,最常用的,大家应该比较熟悉的是执行上一条命令 !!,它可以用来执行最近的一条命令。该命令在我们忘记使用 root 权限执行某项命令时很有用:sudo !! 在上一条命令之前加 root 权限再执行。比如,我们要用 fdisk 命令查看磁盘信息,但是如果没有 root原创 2021-12-03 19:33:31 · 4834 阅读 · 0 评论 -
Linux、Mac 命令行快捷键
Linux、Mac 命令行快捷键Linux 命令行编辑快捷键,参考了好多个,应该算是比较全的了,Linux 和 Mac 的都有,笔者本人比较常用的也已经红色标出来了,如有错误或遗漏,欢迎留言指出。光标移动及编辑:Tab : 自动补齐Ctrl A : 移动光标到命令行首Ctrl E : 移动光标到命令行尾Ctrl B : 光标后退,相当于 ←Ctrl F : 光标前进,相当于 →Alt F : 光标前进一个单词,Mac 中 Option →Alt B : 光标后退一格单词,Mac 中原创 2021-11-30 21:36:42 · 2539 阅读 · 0 评论 -
Linux下rm误删恢复 extundelete
Linux下rm误删恢复 extundelete误删之后要第一时间卸载(umount)该分区,或者以只读的方式来挂载(mount)该分区,否则覆写了谁也没办法恢复。如果误删除的是根分区,最好直接断电,进入单用户模式,以只读的方式挂在分区,然后再进行恢复。安装整体安装步骤# 源码下载wget https://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2# 解压tar原创 2021-11-14 15:23:12 · 2753 阅读 · 6 评论 -
Copy-On-Write COW机制
Copy-On-Write COW机制转自:https://zhuanlan.zhihu.com/p/48147304作者:Java3y前言只有光头才能变强在读《Redis设计与实现》关于哈希表扩容的时候,发现这么一段话:执行BGSAVE命令或者BGREWRITEAOF命令的过程中,Redis需要创建当前服务器进程的子进程,而大多数操作系统都采用写时复制(copy-on-write)来优化子进程的使用效率,所以在子进程存在期间,服务器会提高负载因子的阈值,从而避免在子进程存在期间进行哈转载 2021-11-03 22:47:12 · 328 阅读 · 0 评论 -
Linux下的LD_PRELOAD环境变量与库打桩
Linux下的LD_PRELOAD环境变量与库打桩LD_PRELOAD是Linux系统的一个环境变量,它可以影响程序的运行时的链接(Runtime linker),它允许你定义在程序运行前优先加载的动态链接库,一方面,我们可以以此功能来使用自己的或是更好的函数(比如,你可以使用Google开发的tcmalloc来提升效率),而另一方面,我们也可以向别人的程序注入程序,从而达到特定的目的。我们下面以一个 foepn() 函数的例子来展示一下如何实现运行时库打桩。正常库函数调用首先,我们建立一个测试目录原创 2021-10-29 10:57:24 · 2061 阅读 · 0 评论 -
Linux环境变量详解
Linux环境变量详解简介环境变量是操作系统环境设置的变量,适用于整个系统的用户进程;环境变量可以在命令中设置,但是用户注销的时候将会丢失这些设置值;若要重复适用,则最好在配置文件(如 ~/.bashrc, .profile等)中定义;环境变量的使用与本地变量的使用方法相同,但是在使用之前,必须用export命令设置。环境变量分类按照权限分类系统级:系统级的环境变量是每个登录到系统的用户都要读取的系统变量用户级:用户级的环境变量则是该用户使用系统时加载的环境变量按照生存周期分类原创 2021-10-27 16:45:53 · 2131 阅读 · 0 评论 -
Linux内核初探
Linux内核初探内核的组成部分kernel:内核核心文件,一般为bzp_w_picpath,经过压缩处理的镜像文件;通常内核核心文件保存在/boot/目录下,名称为vmlinuz-version-releasekernel object(ko):内核对象,内核额外功能模块,一般该类文件放置于/lib/modules/[version-release]内核管理的相关命令uname功能:打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。常用选项-n:显原创 2021-10-13 17:31:42 · 380 阅读 · 0 评论 -
Linux下构建自己的C++共享库并配合pkg-config生成链接选项
Linux下构建自己的C++共享库并配合pkg-config生成链接选项本文将以C++链表的新建、打印操作为例构建自己的共享库,并在实际调试代码时尝试使用。我们在做数据结构题时经常需要将链表打印出来看一下结果,但是并没有一种库函数可以让我们直接调用来打印自己的基于ListNode的链表(LeetCode的题目通常是这样的链表)。因此本文将以此为例,介绍怎样构建自己的动态链接库,并通过pkg-config生成对应的链接选项。生成共享库并添加到环境变量我们的链表库的源代码LinkedList.cpp是这样原创 2021-10-09 20:36:37 · 334 阅读 · 0 评论 -
Linux下编译、链接、加载运行C++ OpenCV的两种方式及常见问题的解决
Linux下编译、链接、加载运行C++ OpenCV的两种方式及常见问题的解决在Linux下安装完OpenCV C++之后(还没有安装的读者请参考Ubuntu 18.04 安装OpenCV C++),本文将探索Linux下编译、链接C++ OpenCV的两种方式,并且给出笔者在初次尝试时遇到的一些问题的解决方法,各位读者如果链接OpenCV遇到新的问题,也可留言讨论。注意,我们这里并不采用简单的包含进opencv的头文件,然后再main函数中打印个hello world的测试方式。这种测试方式只能测原创 2021-10-08 20:30:41 · 10477 阅读 · 8 评论 -
Linux中的二进制可执行文件和脚本可执行文件及Shebang
Linux中的二进制可执行文件和脚本可执行文件及Shebang二进制可执行文件我们知道,一个C程序经过预处理、编译、汇编、链接就会得到一个二进制可执行文件,这种文件在Linux中叫做ELF文件。比如我们有一个C源代码hello.c:#include <stdio.h>int main(int argc, char** argv){ printf("Hello !\n");}我们编译得到 hello 文件,并用file命令可以查看到生成的二进制可执行文件的信息:gcc he原创 2021-10-03 21:14:48 · 10048 阅读 · 0 评论 -
Linux中的tty、pts、pty等概念辨析
Linux中的tty、pts、pty等概念辨析基本概念tty、pty、pts、ptmxtty(终端设备的统称):tty一词源于Teletypes,或teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这东西被键盘和显示器取代,所以现在叫终端比较合适。终端是一种字符型设备,他有多种类型,通常使用tty来简称各种类型的终端设备。pty(虚拟终端):但是假如我们远程telnet到主机或使用xterm时不也需要一个终端交互么?是的,这就是虚拟终端p原创 2021-10-02 14:13:18 · 5958 阅读 · 0 评论 -
linux /proc 详解
linux /proc 详解本文整理了一下 linux /proc下的几个常用的目录和文件,可供查阅,之后在学习工作中有别的用到的话会再补充。/proc 简介Linux系统上的/proc目录是一种文件系统,即proc文件系统。与其它常见的文件系统不同的是,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可以通过更改其中某些文件来改变内核的运行状态。另外,/proc是存储在内存(RAM)中,而非原创 2021-09-28 14:42:36 · 1479 阅读 · 0 评论 -
curl 的用法指南
curl 的用法指南转自:http://www.ruanyifeng.com/blog/2019/09/curl-reference.html作者: 阮一峰日期: 2019年9月 5日简介curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。它的功能非常强大,命令行参数多达几十种。如果熟练的话,完全可以取代 Postman 这一类的图形界面工具。本文介绍它的主要命令行参数,作为日常的参考,方便查阅。内容主要翻译自《curl cook转载 2021-09-21 15:04:42 · 197 阅读 · 0 评论 -
xargs 命令教程
xargs 命令教程转自:http://www.ruanyifeng.com/blog/2019/08/xargs-tutorial.html作者: 阮一峰日期: 2019年8月 8日xargs是 Unix 系统的一个很有用的命令,但是常常被忽视,很多人不了解它的用法。本文介绍如何使用这个命令。一、标准输入与管道命令Unix 命令都带有参数,有些命令可以接受"标准输入"(stdin)作为参数。$ cat /etc/passwd | grep root上面的代码使用了管道命令(|)。管道转载 2021-09-21 14:48:44 · 154 阅读 · 0 评论 -
gcc参数 -i, -L, -l, -include
gcc参数 -i, -L, -l, -include-i,-L,-l,-include-l和-L-l参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文件名有什么关系呢?就拿数学库来说,他的库名是m,他的库文件名是libm.so,很容易看出,把库文件名的头lib和尾.so去掉就是库名了好了现在我们知道怎么得到库名,当我们自已要用到一个第三方提供的库名字libtest.so,那么我们只要把libtest.so拷贝到/usr/lib里,编译时加上-ltest参数,我们就能用上li原创 2021-09-20 22:07:57 · 2037 阅读 · 0 评论 -
Linux中的awk、sed、grep及正则表达式详解
Linux中的awk、sed、grep及正则表达式详解简介awk、sed和grep是Linux中文本操作的三大利器。其中awk适用于取列,sed适用于取行,grep适用于过滤。正则表达式首先我们来介绍一下正则表达式,正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。正则表达式是文本操作的好帮手。以下是正则表达式的元字符及含义说明。元字符功能原创 2021-09-20 20:08:24 · 1384 阅读 · 0 评论 -
x11转发:通过ssh远程使用GUI程序
x11转发:通过ssh远程使用GUI程序我们常常使用ssh服务远程操控服务器,大多数操作我们都可以通过命令行命令来实现。ssh远程无法查看GUI程序现在,笔者在x11-test目录下放入一张图片test.jpg,并通过opnencv-python写一个简单的脚本来在图形界面中显示图片。# test.pyimport cv2img = cv2.imread('test.jpg')cv2.imshow('test', img)cv2.waitKey(0)通常,我们在自己本地的机器上运行该原创 2021-09-18 13:31:38 · 10924 阅读 · 0 评论 -
linux常用命令--开发调试篇
前言Linux常用命令中有一些命令可以在开发或调试过程中起到很好的帮助作用,有些可以帮助了解或优化我们的程序,有些可以帮我们定位疑难问题。本文将简单介绍一下这些命令。转自:https://www.yanbinghu.com/2018/09/26/61877.html示例程序我们用一个小程序,来帮助后面我们对这些命令的描述,程序清单cmdTest.c如下:#include<stdio.h>int test(int a,int b){ return a/b;}int mai转载 2021-09-16 18:42:01 · 232 阅读 · 0 评论 -
Linux查看文件内容命令:cat, tail, head, more, less
Linux查看文件内容命令:cat, tail, head, more, lesscat直接显示整个文件。cat直接显示全部文件内容,没有换页等交互。cat filenamemoremore命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页地显示方便使用者逐页阅读。而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。原创 2021-09-14 21:03:53 · 1037 阅读 · 0 评论 -
TabError- inconsistent use of tabs and spaces in indentation 查验及解决方法
TabError: inconsistent use of tabs and spaces in indentation 查验及解决方法报错代码def eccv16(pretrained=True): model = ECCVGenerator() if(pretrained): import torch.utils.model_zoo as model_zoo model.load_state_dict(torch.load('/home/ps/.cache/torch/hub/check原创 2021-09-02 16:39:24 · 299 阅读 · 0 评论 -
Linux中g++与gcc的区别
转自:https://blog.csdn.net/bit_clearoff/article/details/53965514Windows中我们常用vs来编译编写好的C和C++代码;vs把编辑器,编译器和调试器等工具都集成在这一款工具中,在Linux下我们能用什么工具来编译所编写好的代码呢,其实Linux下这样的工具有很多,但我们只介绍两款常用的工具,它们分别是gcc和g++.工具用法介绍 gcc和g++的用法都是一样的,在这里我们只介绍gcc: 上图介绍了相关指令和参数以及该条指令所做的对应的转载 2021-08-25 19:03:27 · 167 阅读 · 0 评论 -
Linux软链接的使用
Linux软链接的使用转自:https://www.cnblogs.com/sueyyyy/p/10985443.html简介软连接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接。具体用法是:ln -s 源文件 目标文件。当 我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在其它的 目录下用ln命令链接(link)就可以,不必重复的占用磁盘空间。例如:ln -s /usr/local/mysql/bin/转载 2021-08-25 16:53:18 · 18383 阅读 · 0 评论 -
Linux查找命令find、loacte、whereis、which、type梳理
Linux查找命令find、loacte、whereis、which、type梳理Linux操作系统中有5种常用的查找命令:find,locate,whereis,which,type,他们分别用于查找不同的东西,本文将就他们各自的功能进行一下梳理。find功能find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。Linux find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找原创 2021-08-22 21:18:54 · 383 阅读 · 0 评论 -
shell脚本长命令带换行 注释方法
shell脚本长命令带换行 注释方法命令行传参在训练深度学习网络时,我们每次实验通常会有许多超参数需要设置,如batch size, epoch, gpu id, arch甚至还有一些具体的模型结构等。这事我们通常使用python模块argparse,在命令行进行传参。比如这样:# train.pyimport argparseparser = argparse.ArgumentParser()parser.add_argument("--batchSize", default=64)pa原创 2021-08-22 16:45:24 · 3649 阅读 · 0 评论 -
Shell脚本多行换行报错:- unrecognized arguments- \
shell error: unrecognized arguments: \在使用linux长命令时,我们通常会用一个shell脚本加\分行的形式来更清晰展示参数。这时有一个注意事项:在\后必须紧跟回车, 否则会导致后面的参数无法传入。因为这时程序会将后面的参数算作一条新命令。本文要说的不是这个问题,而是另一个笔者在使用多换行的shell脚本过程中遇到的另一个问题。笔者当时运行的脚本(简化了大部分参数)如下:python mb_ae_act.py \--ch_p 2 \--batchSize0原创 2021-08-22 15:39:38 · 3801 阅读 · 1 评论