Linux
ox0080
surprise
展开
-
tip:linux终端输出带色彩的文本
.终端中生成彩色输出比较好玩,可以使用转义序列来实现.每种颜色都有对应的颜色码。臂如:重置=0,黑色=30,红色=31,绿色=32,蓝色=34,洋色=35,青色=36,白色=37。要打印彩色输出,使用以下命令:echo -e "\e[1;31m This is red text \e[0m"\e[1;31m将颜色设为红色\e[0m将颜色重新置回要设置彩色背景,经常使用的颜色码是:重...原创 2019-12-03 11:08:23 · 168 阅读 · 0 评论 -
rm反向删除
按内容反向删除rm `ls | grep -v "aa"` #删除包含aa的chuanrm `ls | grep -v "^aa$"` #删除包含独立aa字符串按目录反向删除删除目录aa和目录bb以外的所有其它文件或目录ls *|grep -v 'linuxcast|xuefu' |xargs rm -rf按文件名反向删除删除文件名为abc的文件find . -maxdepth...原创 2019-11-25 10:55:17 · 344 阅读 · 0 评论 -
alias重命名rm-安全删除
修改/bin/rm的使用,使其安全删除### define trash ###alias rm=del #删除alias rl='ls /mobdev/yfz/.trash/' #陈列垃圾箱alias ur=undelfile # 恢复删除文件alias ct=cleantrash # 清空回收站undelfile(){ mv -i /home/mobdev/.trash/...原创 2019-11-22 11:12:34 · 853 阅读 · 0 评论 -
Linux中find命令用法全汇总
Linux 查找命令是Linux系统中最重要和最常用的命令之一。查找用于根据与参数匹配的文件指定的条件来搜索和查找文件和目录列表的命令。查找可以在各种条件下使用,您可以通过权限,用户,组,文件类型,日期,大小等可能的条件查找文件。 第一部分:查找名称查找文件的基本查找命令 第二部分:根据他们的权限查找文件 第三部分:基于所有者和组的搜索文件 第四部分:根据日期...原创 2018-11-21 21:27:01 · 333 阅读 · 0 评论 -
网络通信序列化____json使用教程
网络传输中,牵扯到数据序列化,反序列化。其实,通信双方约定好序列化方式(大端/小端)即可。例如发送方按照大端序列化,接收端在接收到数据后,接收端判断自己的大小端模式,如果自己的CPU是大端模式,则不需要做大小端转换,直接进行数据解析即可。如果是小端,则解析完后还需要将数据转为小端模式。当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传...原创 2018-11-22 15:00:56 · 877 阅读 · 0 评论 -
Linux进程解读
计算机实际上可以做的事情实质上非常简单,比如计算两个数的和,再比如在内存中寻找到某个地址等等。这些最基础的计算机动作被称为指令(instruction)。所谓的程序(program),就是这样一系列指令的所构成的集合。通过程序,我们可以让计算机完成复杂的操作。程序大多数时候被存储为可执行的文件。这样一个可执行文件就像是一个菜谱,计算机可以按照菜谱作出可口的饭菜。程序和进程(process)的区...原创 2018-11-17 14:02:50 · 196 阅读 · 0 评论 -
fork函数详解
功能:一个现有进程可以调用fork函数创建一个新进程。 由fork创建的新进程被称为子进程(child process) 。fork函数被调用一次,但返回两次。两次返回的区别是子进程的返回值是,而父进程的返回值则是新建子进程的进程pid。将子进程返回给父进程的理由是:因为一个进程的子进程可以有多个,并且没有一个函数使一个进程可以获得其所由子进程的pid。fork使子进程得到返...原创 2018-11-17 22:43:16 · 539 阅读 · 0 评论 -
Linux交换分区(Swap)
当我们系统上的物理内存或RAM已满时,我们最终会利用系统上的交换空间。在此过程中,内存的非活动页面将移动到交换空间,从而创建更多内存资源。当系统关闭RAM时,此空间特别有用;但是,交换空间位于硬盘 驱动器上,因此访问速度较慢。因此,它不应被视为RAM的适当替代方案。在本文中,我们将介绍几种检查Ubuntu系统上可用Swap交换空间的方法。本文中描述的命令和过程已在Ubuntu 18.04 LTS系...原创 2018-11-18 15:18:43 · 1614 阅读 · 0 评论 -
Linux压缩解压文件
Linux的压缩命令的源文件只能有一个,这意味在压缩之前不得不先将要压缩的所有文件打包成一个包,然后再压缩包,这样来完成对多个文件的压缩。所以在了解解压缩之前就必须先了解打包命令。Linux的打包一般都是通过tar命令来完成的,通过man tar,可以得到一些信息,tar来完成不同的动作是通过指定不同的参数来完成的,通常使用的也就是——x/c,这两个参数,它们的字面含义是c——...原创 2018-11-18 16:30:13 · 526 阅读 · 0 评论 -
Linux网络---数据包的接收
1:数据包从外面的网络进入物理网卡。如果目的地址不是该网卡,且该网卡没有开启混杂模式,该包会被网卡丢弃。 2:网卡将数据包通过DMA的方式写入到指定的内存地址,该地址由网卡驱动分配并初始化。注: 老的网卡可能不支持DMA,不过新的网卡一般都支持。 3:网卡通过硬件中断(IRQ)通知CPU,告诉它有数据来了 4:CPU根据中断表,调用已经注册的中...原创 2019-03-25 21:11:15 · 233 阅读 · 0 评论 -
win10搭载Ubuntu18构建Linux环境
Linux环境裸机装载Linux操作系统;虚拟机配置Ubuntu,Redhat等Linux发行版;window是系统搭载Linux发行版;环境搭建本文win10上并未使用Ubuntu虚拟机,而使用Windows官方支持的Linux子系统模式。链接:https://www.jianshu.com/p/fcf21d45ea74补充事项1.更换源备份/etc/apt/sources....原创 2019-07-04 11:50:32 · 153 阅读 · 0 评论 -
Xshell通过ssh协议连接远程服务器
1.新建会话,设置名称,选择ssh协议,设置主机IP2.打开用户身份验证,选择验证方法,输入用户名,设置运维发送过来的私钥3.ok原创 2019-07-15 10:15:29 · 2637 阅读 · 0 评论 -
Xshell连接本地服务器
1.获得本地IP,首先判断本地ssh服务是否打开,若打开,使用ifconfig命令获取IPservice ssh status //判端ssh服务是否打开service ssh start //打开ssh服务service ssh restart //打开2.打开xshell,新建会话,设置名称,选择协议,设置IP3.打开用户身份验证,选择验证方法,输入用户名,输入...原创 2019-07-15 10:28:03 · 7517 阅读 · 0 评论 -
服务器端配置Docker
为何不在本地安装使用Docker,原因是公司服务器端已经安装好了Docker,仅仅需要个人配置自己的环境和目录而不需要改Docker,这样做,一是减轻了开发人员在环境安装配置上的时间花销,二是统一了开发运行环境,本身就是利用了Docker环境隔离的特性来配置环境(良好的隔离性是Docker特性的其中之一,但不是全部),使用服务器端的Docker使得环境更加统一。1.登录跳板机,连接机器,将已经...原创 2019-07-15 10:58:05 · 1319 阅读 · 0 评论 -
Cmake链接静态库(一)
生成第三方库的目录下CMakeLists.txt:AUX_SOURCE_DIRECTORY(. DIR)#create static link libraryADD_LIBRARY(sort ${DIR})生成第三方库的目录下cmake.sh:cmake .makemkdir ../libcp libsort.a sort.h ../lib主程序目录所在CMake...原创 2019-07-18 21:04:02 · 41635 阅读 · 0 评论 -
Cmake用法汇总(二)
##Cmake使用一 ,Cmake初级使用项目主目录中的 CMakeLists.txt1 PROJECT(main) #项目名称2 CMAKE_MINIMUM_REQUIRED(VERSION 2.6) #版本号3 ADD_SUBDIRECTORY( src ) #项目中包含子目录src4 AUX_SOURCE_DIRECTORY(. DIR_SRCS) #将当前目录下源...原创 2019-07-19 20:47:44 · 2477 阅读 · 0 评论 -
进程间通信____共享内存
导读:共享内存是在内存中单独开辟的一段内存空间,这段内存空间有自己特有的数据结构,包括访问权限、大小和最近访问的时间等。 共享内存 IPC 原理共享内存进程间通信机制主要用于实现进程间大量的数据传输,下图所示为进程间使用共享内存实现大量数据传输的示意图: 共享内存是在内存中单独开辟的一段内存空间,这段内存空间有自己特有的数据结构,包括访问权限、大小和最近访问的时间等。该数据结构...原创 2018-11-20 22:45:13 · 124 阅读 · 0 评论 -
TCP/IP学习笔记(8) --TCP协议
TCP协议,这是TCP/IP里面最重要也是最精彩的部分,要花大力气来学习。简要介绍TCP和UDP处在同一层---传输层,但是TCP和UDP最不同的地方是,TCP提供了一种可靠的数据传输服务,TCP是面向连接的,也就是说,利用TCP通信的两台主机首先要经历一个“拨打电话”的过程,等到通信准备结束才开始传输数据,最后结束通话。所以TCP要比UDP可靠的多,UDP是把数据直接发出去,而不管对方是...原创 2018-11-15 10:13:32 · 199 阅读 · 0 评论 -
Linux shell命令解析器(二),命令
环境:Ubuntu14-4 内核 4.4.0-135vim编辑器 7.4 gcc 4.8.4 1.1 知识点Shell 的基本概念 文件相关函数,内存相关函数 1 ls命令语法ls [选项] [目录或文件名] 参数: -a:--all的缩写,显示所有的文件,包括隐藏文件(以.开头的文件),参考示例1。(常用) -A:--almost-all的缩写,显示...原创 2018-11-09 17:29:43 · 679 阅读 · 0 评论 -
Linux shell命令解析器(一),bash终端
环境:Ubuntu14-4 内核 4.4.0-135vim编辑器 7.4 gcc 4.8.4 1.1 知识点Shell 的基本概念 进程控制相关的系统调用的使用(如 fork,exec函数族)整理框架:1.命令解释器首先是一个死循环。2.打印一个命令提示符。3.取得命令行输入放在数组里面,要求命令带参数。可以getc()、fgets()、scanf()等。...原创 2018-11-04 13:03:50 · 3257 阅读 · 1 评论 -
Linux C语言编程基本命令大全
基本命令 关机:shutdown -h halt init 0 poweroff重启:shutdown -r reboot init 6pwd:查看工作目录ls:查看指定目录的内容-l:列表显示-a:显示所有,包括隐藏文件-h:人性化的显示-d:只显示目录,不查看内容cd:切换工作目录.:当前目录..:上一级目录~:用户家目录-:上次切...原创 2018-11-02 21:47:12 · 5729 阅读 · 0 评论 -
Linux写时拷贝技术(copy-on-write)
在Linux程序中,fork()会产生一个和父进程完全相同的子进程,但子进程在此后多会exec系统调用,出于效率考虑,linux中引入了“写时复制“技术,也就是只有进程空间的各段的内容要发生变化时,才会将父进程的内容复制一份给子进程。 那么子进程的物理空间没有代码,怎么去取指令执行exec系统调用呢? 在fork之后exec之前两个进程用的是相同的物理空间(内存区),子...原创 2018-11-04 19:56:37 · 286 阅读 · 0 评论 -
Linux常用命令全称
pwd:print work directory 打印当前目录 显示出当前工作目录的绝对路径ps: process status 进程状态,类似于windows的任务管理器常用参数:-auxfps -auxf 显示进程状态df: disk free 其功能是显示磁盘可用空间数目信息及空间结点信息。换句话说,就是报告在任何安装的设备或目录中,还剩多少自由的空间。du: Disk ...原创 2018-11-13 10:34:02 · 315 阅读 · 0 评论 -
TCP/IP学习笔记(1) --基本概念
为什么会有tcp/ip 在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别。就好像圣经中上帝打乱了各地人的口音,让他们无法合作一样。计算机使用者意识到,计算机只是单兵作战并不会发挥太大的作用。只有把它们联合起来,电脑才会发挥出它最大的潜力。于是人们就想方设法的用电线把电脑连接到了一起。 但...原创 2018-11-13 10:48:03 · 173 阅读 · 1 评论 -
TCP/IP学习笔记(10)--TCP连接的建立与终止
TCP连接的建立可以简单的称为三次握手,而连接的中止则可以叫做四次握手。 TCP是一个面向连接的协议,所以在连接双方发送数据之前,都需要首先建立一条连接。这和前面讲到的协议完全不同。前面讲的所有协议都只是发送数据而已,大多数都不关心发送的数据是不是送到,UDP尤其明显,从编程的角度来说,UDP编程也要简单的多----UDP都不用考虑数据分片。书中用telnet登陆退出来解释TCP协议连...原创 2018-11-15 14:27:36 · 152 阅读 · 0 评论 -
TCP/IP学习笔记(11) --TCP交互数据流,成块数据流
目前建立在TCP协议上的网络协议特别多,有telnet,ssh,有ftp,有http等等。这些协议又可以根据数据吞吐量来大致分成两大类:(1)交互数据类型,例如telnet,ssh,这种类型的协议在大多数情况下只是做小流量的数据交换,比如说按一下键盘,回显一些文字等等。(2)数据成块类型,例如ftp,这种类型的协议要求TCP能尽量的运载数据,把数据的吞吐量做到最大,并尽可能的提高效率。针对...原创 2018-11-16 13:42:32 · 200 阅读 · 0 评论 -
TCP/IP学习笔记(2) --数据链路层
数据链路层有三个目的: 为IP模块发送和 接收IP数据报。 为ARP模块发送ARP请求和接收ARP应答。 为RARP发送RARP请 求和接收RARP应答 ip大家都听说过。至于ARP和RARP,ARP叫做地址解析协议,是用IP地址换MAC地址的一种协议,而RARP则叫做逆地址解析协议,在tcp/ip协议的后面章节会介绍它们(在局域网里面用ARP协议可以很容易的搞瘫痪网...原创 2018-11-14 14:25:33 · 213 阅读 · 1 评论 -
TCP/IP学习笔记(3) --IP、ARP、RARP协议
把这三个协议放到一起学习是因为这三个协议处于同一层,ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息。数据链路层可以从ARP得到数据的传送信息,而从IP得到要传输的数据信息。IP协议IP协议是TCP/IP协议的核心,所有的TCP,UDP,IMCP,IGCP的数据都以IP数据格式传输。要注意的是,IP不是可靠的协议,这是说,IP协议没有提供一种数据未传达以后...原创 2018-11-14 14:35:29 · 160 阅读 · 1 评论 -
TCP/IP学习笔记(4) --ICMP,ping,traceroute
IMCP协议介绍当传送IP数据包发生错误--比如主机不可达,路由不可达等等,ICMP协议将会把错误信息封包,然后传送回给主机。给主机一个处理错误的机会,这 也就是为什么说建立在IP层以上的协议是可能做到安全的原因。ICMP数据包由8bit的错误类型和8bit的代码和16bit的校验和组成。而前 16bit就组成了ICMP所要传递的信息。书上的图6-3清楚的给出了错误类型和代码的组合代...原创 2018-11-14 21:31:29 · 212 阅读 · 0 评论 -
TCP/IP学习笔记(5) --IP选路
静态IP选路一个简单的路由表选路是IP层最重要的一个功能之一。前面的部分已经简单的讲过路由器是通过何种规则来根据IP数据包的IP地址来选择路由。这里就不重复了。首先来看看一个简单的系统路由表。命令: route print | more 对于一个给定的路由器,可以打印出五种不同的flag。 U表明该路由可用。 G表明该路由是到一个网关。如果没有这个标志,说明和D...原创 2018-11-14 21:44:19 · 1351 阅读 · 3 评论 -
TCP/IP学习笔记(6) --UDP协议
UDP简要介绍UDP是传输层协议,和TCP协议处于一个分层中,但是与TCP协议不同,UDP协议并不提供超时重传,出错重传等功能,也就是说其是不可靠的协议。UDP协议头UDP端口号由于很多软件需要用到UDP协议,所以UDP协议必须通过某个标志用以区分不同的程序所需要的数据包。端口号的功能就在于此,例如某一个UDP程序A在系统中注册了3000端口,那么,以后从外面传进来的目...原创 2018-11-14 21:49:40 · 266 阅读 · 0 评论 -
TCP/IP学习笔记(7) --广播,多播IGMP协议
单播,多播,广播的介绍单播(unicast)单播是说,对特定的主机进行数据传送。例如给某一个主机发送IP数据包。这时候,数据链路层给出的数据头里面是非常具体的目的地址,对于以太网来 说,就是网卡的MAC地址(不是FF-FF-FF-FF-FF-FF这样的地址)。现在的具有路由功能的主机应该可以将单播数据定向转发,而目的主机的网 络接口则可以过滤掉和自己MAC地址不一致的数据。广播(bro...原创 2018-11-14 21:57:57 · 1658 阅读 · 0 评论 -
Linux---VIM的配置
vim是从 vi 发展出来的一个文本编辑器。功能丰富,在程序员中被广泛使用,而且可以根据自己需要对其进行配置,下面我们来介绍一些vim的基本配置。首先将你的Linux切换到超级用户,输入命令 su,输入密码再回车切换到root用户,cd进入当前用户主工作目录,输入vim .vimrc进行vim配置。 1 if has ("syntax") syntax on end...原创 2018-07-28 17:53:57 · 191 阅读 · 0 评论