Linux
文章平均质量分 75
行者三个石
科技才是强国之本
展开
-
Linux系统编程——文件描述符的复制:dup()和dup2()
原文链接:https://blog.csdn.net/tennysonsky/article/details/45870459dup() 和 dup2() 是两个非常有用的系统调用,都是用来复制一个文件的描述符,使新的文件描述符也标识旧的文件描述符所标识的文件。这个过程类似于现实生活中的配钥匙,钥匙相当于文件描述符,锁相当于文件,本来一个钥匙开一把锁,相当于,一个文件描述符对应一个文件,现在,我们去配钥匙,通过旧的钥匙复制了一把新的钥匙,这样的话,旧的钥匙和新的钥匙都能开启这把锁。对比于 dup()转载 2021-07-20 20:01:11 · 439 阅读 · 0 评论 -
win10下使用Linux(ubuntu18.04)
最近发现win10有一个非常好用的东西,可以在win10下直接使用的的Linux的了,就像使用win10里的软件一样,不用再装虚拟机,买什么阿里云腾讯云的服务器了,使用了一周,体验还不错,整理了下,分享给大家。内容包括:1.win10子系统的的Linux的安装(Ubutu18.04,其他的类似)2.ubuntu18.04图形界面的安装3.部分使用介绍3.1文件目录在win10文...原创 2018-12-08 17:22:27 · 2772 阅读 · 2 评论 -
Linux实现的进度条一(基本知识学习和简单功能)
Linux下经常下载或者升级的时候会有一个进度条,今天学习了下,整理了个笔记,一来为了加深记忆巩固知识,二来方便日后查阅。当然也希望和大家共同学习,一起进步。废话不多说,上效果图:代码:#include <stdio.h>#include <string.h>#include <unistd.h>#define PROGRESS_BAR...原创 2019-11-18 21:59:24 · 240 阅读 · 0 评论 -
linux中,ls -l命令显示的total的含义。
原文地址:https://blog.csdn.net/jialexiao/article/details/71124930当在linux里使用ll或者ls -l命令查看文件详情时,会在第一行看到如下的字样: total 20 drwxr-xr-x 8 user rnd 134 Apr 27 04:40 ./ drwxr-xr-x 6 user rnd 59 Apr 27 07:56...转载 2018-04-14 17:50:08 · 1846 阅读 · 1 评论 -
ln命令详解
Linux文件系统中,有所谓的链接(link),我们可以将其视为档案的别名,而链接又可分为两种 : 硬链接(hard link)与软链接(symbolic link),硬链接的意思是一个文件可以有多个名称,而软链接的方式则是产生一个特殊的文件,该文件的内容是指向另一个文件的位置。硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。软链接:1. 软链接,以路径的形式存在。类似于W...原创 2018-04-14 20:40:59 · 15394 阅读 · 0 评论 -
执行ls -l后,各个信息代表的含义图解
原文地址: https://blog.csdn.net/zhuoya_/article/details/77418413 其中要说明是第一级子目录数:该目录作为父目录,该父目录下的目录称之为子目录。也就是说这个数表示该父目录下的子目录的个数,注意子目录的个数,不包括文件。...原创 2018-04-14 20:49:23 · 10961 阅读 · 8 评论 -
从 inode 了解 Linux 文件系统
原文地址:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/index.html理解 Linux 的硬链接与软链接从 inode 了解 Linux 文件系统 ...转载 2018-04-14 20:53:59 · 252 阅读 · 0 评论 -
centOS 7 安装man中文版手册http://blog.51cto.com/9762617/1678918
原文地址:http://blog.51cto.com/9762617/1678918在学习linux命令的过程中,man是很有用的一个工具,但是对于很多英文水平有限的人来说学习起来有些困难,再此提供安装中文版man的详细步骤。当然英文水平不好是需要进行自我检讨的,希望在学习的时候利用中英文对照着来看。达到linux和英文一起进步的效果。本文以最常用的centOS为例。讲解如何安装man的中文版。查...原创 2018-04-14 21:29:28 · 711 阅读 · 0 评论 -
makefile学习笔记(1)
将学习makefile的过程记录下,做个笔记,一是加深理解和记忆,二也方便日后遗忘了查找,因为自己也是边学边记录的,难免有很多问题,请多多指正和包涵因为主要是学习makefile,所以开始只有一个main.c的函数,内容如下:一.基本的makefilemain.c#include <stdio.h>int main(int argc,char** argv){ int i = 0...原创 2018-04-14 23:44:20 · 182 阅读 · 0 评论 -
关于Linux编译时的路径一些说明
关于Linux编译时的路径一些说明如果源文件(.c)和头文件(.h)在同一个目录那么就直接包含使用头文件时,就直接包含就行了,不需要路径的说明举例:比如现在有main.c,test.c,test.h三个文件,且都在同一个目录/home/user/code下test.h声明了test.c中的函数main.c需要使用test.c中的函数/*main.c文件*/#i...原创 2018-04-15 13:35:37 · 1215 阅读 · 0 评论 -
Centos 修改当前路径显示为全路径
原文地址:https://blog.csdn.net/u014729808/article/details/79714581注意:需要root权限 Centos 修改当前路径显示为全路径 修改/etc/bashrc [ “PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W转载 2018-04-15 13:38:50 · 1880 阅读 · 0 评论 -
date命令
Linux date命令1.date命令man手册说明DATE(1) FSF DATE(1)NAME date -...原创 2018-04-15 18:53:52 · 1120 阅读 · 0 评论 -
makefile总结
Makefile 使用总结原文地址:https://www.cnblogs.com/wang_yb/p/3990952.html 1. Makefile 简介Makefile 是和 make 命令一起配合使用的.很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂.Makefile的组织...原创 2018-04-16 22:14:00 · 212 阅读 · 0 评论 -
Linux中的动态库和静态库(.a.la.so.o)
Linux中的动态库和静态库(.a/.la/.so/.o)原文地址:https://www.cnblogs.com/findumars/p/5421910.html在windows下,一般可以通过文件的后缀名来识别文件的类型。在Linux下大致上也是可以的。但是要明确的一点是,在linux下,文件的后缀与文件的类型是没有必然的联系的。这只是约定俗称的习惯罢了。在lin...原创 2018-04-21 23:58:33 · 19907 阅读 · 1 评论 -
去掉ubuntu命令行模式提示声
安装ubuntu18.04后,用xshell连接后,按Tab键总是有提示声很烦。修改/etc/inputrc去掉 #set bell-style none 的 # ,保存,重启。这个方法终端中的提示声可以去掉。修改成下面的配置vi、vim里的提示声参照https://blog.csdn.net/topasstem8/article/details/6452393...原创 2018-12-02 21:06:18 · 895 阅读 · 0 评论 -
TCP的三次握手与四次挥手
TCP报文格式序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。确认号ack:占4个字节,期待收到对方下一个报文段的第一个数据字节的序号;序列号表示报文段携带数据的第一个字节的编号;而确认号指的是期望接...转载 2019-05-09 19:16:28 · 277 阅读 · 0 评论 -
关于sudo: unable to resolve host ubuntu的报错提示
有的不想用系统的默认主机名,想直接改了自己喜欢的主机名,但是有的时候会出现下面的报错sudo: unable to resolve host ubuntu这是因为配置文件没有完全修改全的原因:当我想用自己的主机名时一般会修改/etc/hostname的文件,如下:vim /etc/hostname退出保存后,有时会出现上面的错误提示,所以还需要修改一个地方vim /etc/hosts/etc/ho...原创 2018-03-19 20:45:34 · 1137 阅读 · 0 评论 -
ubuntu下安装man中文包(我知道的最简单的方法)
当我们在ubuntu下使用命令,常常需要用到man命令来帮助查看命令参数的意义。但是我们的英文水平不一,因此好多英文解释根本看不懂。比如用该命令查看 vi 的帮助,纯英文很难懂:其实ubuntu有man的中文包,只需几行命令安装配置即可显示中文帮助。命令如下: 123apt-get install manpages-zhvi /etc/manpath.config:1,$s#/usr/share/...转载 2018-03-10 16:22:07 · 8810 阅读 · 2 评论 -
ip与子网掩码
IP地址的分类网络号 用于识别主机所在的网络;主机号 用于识别该网络中的主机。 IP地址分为五类,A类保留给政府机构,B类分配给中等规模的公司,C类分配给任何需要的人,D类用于组播,E类用于实验,各类可容纳的地址数目不同。顾名思义,分类的IP地址就是将IP地址划分为了2个固定长度的字段组成,第一个字段是网络号(net-id),代表所连接到的网络。第二个原创 2017-07-26 22:35:31 · 318 阅读 · 0 评论 -
GDB调试
原文地址:https://linux.cn/article-8900-1.htm目录break -- 在指定的行或函数处设置断点,缩写为 binfo breakpoints -- 打印未删除的所有断点,观察点和捕获点的列表,缩写为 i bdisable -- 禁用断点,缩写为 disenable -- 启用断点clear -- 清除指定行或函数处的断点delete -- 删除断点,转载 2017-09-25 22:34:17 · 275 阅读 · 0 评论 -
UltralSO制作Centos U盘系统盘
原文地址:http://blog.csdn.net/sunxiaopengsun/article/details/77429568所需清单:1. 硬件配置:功能正常的U盘,容量4GB以上 (USB 2.0或3.0皆可,这里以SanDisk Extreme 16GB为例)。2. 工具软件:Windows 7系统 + UltraISO v9.6.5.3237单文件绿色版。3转载 2017-09-30 19:59:17 · 1831 阅读 · 1 评论 -
修改Linux系统的主机名
我们安装Linux后,一般都会显示默认的主机名,有时我们需要修改为自己想要的主机名怎么办?下面的教程即使新手,也会理解和操作的1.系统显示的用户名(这里我已经修改过,默认的主机名修改方法一样)2. 用vi /etc/sysconfig/network命令打开该文件上图是为修改时的配置文件,现在将HOST NAME修改为自己想要的,如MyCompute原创 2017-10-01 09:15:53 · 307 阅读 · 0 评论 -
Linux中sysinfo的用法
sysinfo结构体Linux中,可以用sysinfo来获取系统相关信息。Linux中,sysinfo是用来获取系统相关信息的结构体。函数声明和原型:#include int sysinfo(struct sysinfo *info);在Linux中不同对版本结构体不一样在Linux 2.3.16中,结构体的信息是(单位是字节):struct sys原创 2017-10-09 22:31:09 · 25700 阅读 · 0 评论 -
跟我一起写makefile 二
在跟我一起写makefile 一的文章中,简单按照最常规的并结合陈皓的跟我一起写makefile学习了怎么编写,今天学习了点儿新内容并上机熟练了下区别于上一篇文章主要包括两点:1.使用变量让makefile编写起来更简单2.了解makefile的隐式规则一、Makefile 里有什么? Makefile 里主要包含了五个东西:显式规则、隐晦规则、变量定义、文件指示原创 2017-11-06 21:48:18 · 194 阅读 · 0 评论 -
跟我一起写makefile 三
前面的一二写了makefile的用了makefile的几个规则这篇文章继续讲剩下的两个规则1.注释2.文件指示一.注释注释。Makefile 中只有行注释,和 UNIX 的 Shell 脚本一样,其注释是用“#”字符,这 个就像 C/C++中的“//”一样。如果你要在你的 Makefile 中使用“#”字符,可以用反斜框 进行转义,如:“\#”二.文件指示其包括原创 2017-11-07 22:12:46 · 241 阅读 · 0 评论 -
Linux C 多文件编译
多文件编译将工程目录下的每个源文件都编译(通过编译器)成对应的目标文件(Linux平台下为.o文件,是二进制的,但无法执行) ,然后将所有的目标文件和库文件链接在一起(通过链接器)构成最终的可执行文件注意:每个源文件都是单独编译的例如:编译a.c文件(整个程序只有这一个源文件,多文件类比)1. 生成二进制目标文件(默认生成a.o的文件):(1) gcc a.c –c (g原创 2017-11-02 22:09:56 · 10800 阅读 · 0 评论 -
跟我一起学makefile 一
makefile定义: 一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。 makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个ma原创 2017-11-04 23:04:03 · 503 阅读 · 0 评论 -
xshell连接centos经常掉线的问题
在使用xshell连接centos时,经常会遇到突然掉线的情况,ping的通,然后重新连接一下就可以了虽然没什么大问题,但总是麻烦,下面的这种方法可以解决这种问题#进入ssh目录cd /etc/ssh#修改sshd_config参数,这个时候一般需要root用户修改该文件vim sshd_config#找到以下几个参数并修改成如下结果PermitRootLogi原创 2017-11-25 11:11:46 · 6498 阅读 · 0 评论 -
C语言时间函数(4)之Linux下设置时间的函数stime()和settimeofday()
标准C库中只有获取系统时间的API,好像还没有设置系统时间的API,本文将谈谈如何在linux平台设置系统时间,最后给出一个与平台无关的设置系统时间的封闭函数。linux是如何管理时间的?在系统启动时,Linux操作系统将时间从CMOS中读到系统时间变量中,以后修改时间通过修改系统时间实现。为了保持系统时间与CMOS时间的一致性,Linux每隔11分钟会将系统时间写入CMOS,同步时间原创 2018-01-08 22:41:40 · 40288 阅读 · 4 评论 -
pid_t类型
创建进程时经常会用到进程号的类型定义:pid_t。我们都知道这个类型定义实际上就是int型。但是在linux下的c中的头文件中这个定义到底是怎么定义的呢?今天就把以前找这个定义的过程贴出来:1.首先在/usr/include/sys/types.h中有如下定义#include ...... #ifndef __pid_t_definedtypedef原创 2018-01-28 22:18:30 · 1114 阅读 · 0 评论 -
使用Xshell连接Ubuntu
转裁源于:http://www.cnblogs.com/wuyuegb2312/archive/2013/03/28/2986963.html使用Xshell连接Ubuntu Xshell是一个安全终端模拟软件,可以进行远程登录。我使用XShell的主要目的是在Windows环境下登录Linux终端进行编码,非常方便。本文简单介绍下它的使用转载 2018-01-29 23:16:50 · 572 阅读 · 0 评论 -
ubuntu搭建svn服务器
原文地址:http://blog.csdn.net/lbpeking/article/details/55667811为了学习SVN服务器是怎么搭建的,我在Ubuntu虚拟机上搭建了一个SVN服务器,可以作为项目开发的版本,记录下来防止自己遗忘,同时可以帮助更多的人。一:搭建环境查看Ubuntu系统的版本信息:可用cat /proc/version命令、uname -a命令与sb_release ...转载 2018-03-10 13:28:57 · 320 阅读 · 0 评论 -
将可执行文件做成一个命令
1.将可执行文件名修改为命令名2.将修改好的文件名移动到/bin下,注意需要root权限3.就相当于一个命令了,直接当做命名执行原创 2016-12-02 21:41:30 · 937 阅读 · 0 评论