
Linux
好雨知时节呀
热爱分享,热爱生活
展开
-
linux下文件和目录的压缩和解压(gzip、bzip2、tar)
文件的压缩和解压:首先说一下打包和压缩的概念:打包是指将一大堆文件或目录什么的变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。常见的压缩文件扩展名:扩展名解释*.gzgzip程序压缩的文件*.bz2bzip2程序压缩的文件*.tartar程序打包的数据,并没有经过压缩*.tar.gztar程序打包的文件,经过gzip的...原创 2018-12-11 23:13:11 · 4696 阅读 · 1 评论 -
socket 实现UDP客户端与服务端之间的通信
通信效果:源代码:udpsocket.hpp#pragma once#include <iostream>#include <string>#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <errno.h>#include...原创 2019-06-04 18:14:07 · 339 阅读 · 0 评论 -
socket 初识
套接字套接字描述符套接字是通信端点的抽象。就比如使用文件描述符访问文件,应用程序用套接字描述符访问套接字。#include <sys/socket.h>int socket(int domain, int type, int protocol);参数说明:domain (域): 确定通信的特性,包括地址格式。套接字通信域(部分表)域描述AF...原创 2019-06-02 23:22:54 · 165 阅读 · 0 评论 -
Linux中进程创建、僵尸进程、孤儿进程
操作系统的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等等功能。在操作系统中,一般把进程控制用的程序段称为原语,原语的特点是执行期间不允许中断,它是一个不可分割的基本单位。进程的创建程序从硬盘中加载到内存中,操作系统为新进程分配一个唯一的进程标识号,并申请一个空白的PCB,若申请失败,则创建失败。失败原因:(1)大于用户可以创建的进程最大...原创 2019-05-16 21:31:08 · 774 阅读 · 0 评论 -
进程基本概念
什么是进程?早期的计算机一次只能执行一个程序,这种程序完全控制系统,并且访问所有系统资源。到了现代,计算机系统允许加载多个程序到内存,以便于并发执行。这就要求操作系统对各种程序提供更严格的控制和更好地划分和规划。这些 需求引发了进程概念的产生,大白话的说,进程就是正在执行的程序,是现代分时操作系统的工作单元。操作系统的复杂程度决定它可以为用户带来更好地体验感。虽然它主要它主要关注的是执行用...原创 2019-05-16 10:36:34 · 1738 阅读 · 0 评论 -
Linux目录结构
使用命令查看目录信息:树形结构的文件目录:系统启动必须:/boot:存放的启动Linux 时使用的内核文件,包括连接文件以及镜像文件。/etc:存放所有的系统需要的配置文件和子目录列表,更改目录下的文件可能会导致系统不能启动。/lib:存放基本代码库(比如c++库),其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。/sys: 这是linux2...原创 2019-05-10 11:29:10 · 136 阅读 · 0 评论 -
centos自动获取IP地址
每次登陆centos之后,都需要用命令在root用户下键入dhclient命令进行动态获取IP地址,这种操作有点过于繁琐,那么如何开机就让它自动获取到呢?我们都知道Linux一切皆文件,所以对于网卡也有对应的网卡设置文件,我们只要进入文件修改为自动获取即可。具体方法:第一步:使用ip add查看网卡信息,并记录网卡名(ens33)第二步修改网卡参数文件信息,将ONBOOT=NO...原创 2019-05-10 11:02:22 · 4357 阅读 · 0 评论 -
xshell登陆Linux速度慢的解决(以centos为例)
用虚拟机装了Linux操作系统之后,使用xshell软件连接Linux系统,发现可以登陆,但是认证特别的慢。该如何解决呢?这是因为在认证的时候Linux需要反向解析DNS,如果我们将此解析关闭就解决了这个问题:具体方法:第一步:[root@localhost ~]# vim /etc/ssh/sshd_config #可能各个Linux操作系统路径存在差异,但是基本上都在这个文件里面...原创 2019-05-10 10:43:35 · 925 阅读 · 0 评论 -
Linux中fork()系统调用函数
什么是fork()fork()系统调用用于创建新进程,新创建的进程为子进程,调用fork()并创建新进程的进程是父进程。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,这俩个进程默认完成同样的功能,但如果初始参数和传入的变量不同,俩个进程也可以完成不同的功能。父子进程运行的时间: 子进程和父进程是同时执行的。但是输出没有固定的顺序,有可能父进程先输出,也有可能子进程先输出...原创 2019-04-25 17:44:34 · 3621 阅读 · 1 评论 -
C语言打印环境变量
1 #include <stdio.h> 2 3 int main(int argc, char *argv[], char *envp[]){ 4 int i; 5 for(i = 0; envp[i] != NULL; i++){ 6 printf("\n%s", envp[i]); 7 } 8 9 ...原创 2019-04-29 23:18:20 · 921 阅读 · 0 评论 -
C语言获取主机名和IP地址
获取主机与IP地址的C语言代码我们将使用以下函数:gethostname():gethostname函数检索本地计算机的标准主机名。gethostbyname():gethostbyname函数从主机数据库中检索与主机名对应的主机信息。inet_ntoa():inet_ntoa函数将(Ipv4)Internet网络地址转换为Internet标准点分十进制格式的ASCII字符串。代码来源于...原创 2019-04-28 17:13:49 · 6931 阅读 · 5 评论 -
Linux下彩色进度条的实现
什么是进度条?进度条即计算机在处理任务时,实时的,以图片形式显示处理任务的速度,完成度,剩余未完成任务量的大小,和可能需要处理时间,一般以长方形条状显示。实现所需要的知识:输出函数、缓冲区、usleep函数以及Linux终端中颜色的显示。什么是缓冲区缓冲区又称为缓存,它是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空...原创 2019-04-23 23:28:38 · 171 阅读 · 3 评论 -
C语言的内存布局(详细分析变量在.bss和DS段的分布)
引言随着深入的学习C语言,这门语言是与内存息息相关的,那么为了更好地认识这门语言,我们就要从内存深入剖析,此篇博客来浅谈一下C语言的内存布局。从内存布局谈起运行中的C语言内存布局上图中显示了,C语言的内存布局,可以看到的区域有,文本段,初始化数据端、未初始化数据段,还有堆与栈。分析各段作用(1) 文本段(.text)文本段,也叫作代码段;是目标文件(二进制文件)...原创 2019-04-28 15:44:33 · 2959 阅读 · 1 评论 -
Linux常见包管理基础知识(以及YUM和RPM的区别)
介绍大多数现代类Unix操作系统都提供了一种查找和安装软件的集中式机制。软件通常以包的形式分发,保存在存储库中。使用包称为包管理。包提供操作系统的基本组件,以及共享库,应用程序,服务和文档。包管理系统不仅仅是一次性安装软件。它还提供了用于升级已安装软件包的工具。软件包存储库有助于确保代码已经过审查,以便在您的系统上使用,并且已安装的软件版本已得到开发人员和软件包维护人员的批准。在配置服务器或...原创 2019-04-23 20:58:48 · 451 阅读 · 1 评论 -
【面试题】gcc/g++编译器的使用
什么是gcc?gcc命令使用GNU推出的基于C/C++的编译器,是开放源代码领域应用最广泛的编译器,具有功能强大,编译代码支持性能优化等特点。现在很多程序员都应用GCC,怎样才能更好的应用GCC。目前,GCC可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言的程序,可根据需要选择安装支持的语言。gcc的使用:语法gcc [选项] [参数]选项-o:指定生...原创 2019-04-23 20:35:28 · 1246 阅读 · 0 评论 -
Linux各种(常用)编辑器
了解如何通过命令行快速有效地编辑文件对每个Linux系统管理员都至关重要。文件编辑每天执行,无论是配置文件,用户文件,文本文档还是您需要编辑的任何文件。这就是为什么选择一个喜欢的命令行文本编辑器并掌握它的好主意。知道如何使用其他文本编辑器是很好的,但是您应该掌握至少一个,这样您就可以在需要时执行更复杂的任务。在本教程中,我们将向您展示Linux中最常见的命令行文本编辑器,并向您展示它们的优缺点...原创 2019-04-23 20:03:48 · 25238 阅读 · 0 评论 -
Linux的基本使用以及命令
Linux 基本命令:遍历目录:在 Linux 文件系统上,可以使用切换目录命令 cd 将 shell 会话切换到另一个目录:格式:cd destinationcd 命令可以接受单个参数;如果没有参数,则将切换到用户主目录。destination 参数可以用俩种方式表示: 一、 绝对路径(以/开头的路径)[root@localhost ~]# cd /usr [root@local...原创 2018-11-28 16:21:20 · 2137 阅读 · 3 评论 -
Linux磁盘管理:分区、格式化、挂载
1、磁盘的物理结构:2、为什么进行分区:3、磁盘的种类:4、磁盘分区:5、磁盘分区操作:6、磁盘格式化:7、挂载磁盘:8、挂载类型:9、UUID:##############################################################磁盘的物理结构:磁头:磁头是硬盘中最昂贵的部件,也是硬盘技术中最重要和最关键的一环。传统的磁头是读写合一...原创 2018-12-11 16:42:58 · 759 阅读 · 0 评论 -
实现孤儿进程(孤儿进程会被 init 进程收养善后,所以没什么危害)
有关孤儿进程的讲解:孤儿进程讲解博客传送门 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <errno.h> 4 #include <unistd.h> 5 6 int main(){ 7 8 pid_t pid = fork(); 9 ...原创 2019-06-05 09:41:30 · 543 阅读 · 2 评论