- 博客(57)
- 收藏
- 关注
转载 ubuntu18.04搭建NFS服务器
系统环境:NFS服务器操作系统: ubuntu18.04 server ltsNFS服务器IP: 192.168.1.144注: NFS服务器 指的是 待安装 NFS服务 的机器(物理机或者虚拟机)步骤如下:1. 先更新sudo apt update2. 安装 NFS服务 (此时该服务已设置开机自启动)sudo apt install nfs-server3.修改配置文件, 添加nfs-server上用于共享的目录,并设置允许访问该目录的客户机IP,及其读写权限.我.
2021-03-17 21:08:35 1306 1
转载 配置uboot指定nfs挂载根文件系统
介绍如何使用nfs技术调试文件系统概念NFS是Network File System的缩写及网络文件系统。要功能是通过局域网络让不同的主机系统之间可以共享文件或目录。NFS系统和Windows网络共享、网络驱动器类似, 只不过windows用于局域网, NFS用于企业集群架构中, 如果是大型网站, 会用到更复杂的分布式文件系统FastDFS,glusterfs,HDFS介绍nfs实现原理当用户读写有关的nfs下的目录, 最终由内核解析完成后驱动硬件,完成相应的操作。1.用户进程访问.
2021-03-17 21:06:54 2377 1
转载 linux执行sh报错:$’\r’: 未找到命令
因为在dos/window下按一次回车键实际上输入的是“回车(CR)”和“换行(LF)”,而Linux/unix下按一次回车键只输入“换行(LF)”,所以文件在每行都会多了一个CR,所以Linux下运行时就会报错找不到命令,所以,解决问题之道,就是把dos文件格式转换为unix格式。方法1:使用dos2unix命令转换 第一步:安装dos2unix命令,如果已经安装,跳过该步骤 centos:yum install dos2unix ubuntu:sudo ap...
2020-05-29 12:52:52 1346 1
原创 算法-用C语言实现
1.交换两个变量的值,不使用第三个变量,即a=3, b=5, 交换后b=3, a=5。 unsigned char a = 3, b = 5; a = a + b; b = a - b; a = a - b;或者 a = a ^ b; b = a ^ b; a = a ^ b;如果写成函数:void swap(int*...
2020-04-17 18:44:39 1001
原创 c语言处理指针、数组、运算符等说明、运用
1.指针的考察void main(void){ int a[5] = {1, 2, 3, 4, 5}; int *ptr = (int *)(&a + 1); // &a取址后以a[0-4]整个数组为步进,a以a[0]也就是int为步进 printf("%d %d" , *(a + 1), *(ptr - 1));}这段程序的输出是: (a) 2 ...
2020-04-16 16:47:47 231
原创 c语言实现的一些解决数学问题的函数
1.求x的n次幂的函数int what ( int x , int n){ int val; int product; product = 1; val = x; while (n > 0) { if (n%2 == 1) product = product * val; /*如果是奇数次幂, x(v...
2020-04-16 13:03:31 631
原创 c语言位运算符处理程序(二进制转换函数、十进制用二进制字符输出函数)
//编写一个程序,通过命令行参数读取两个二进制字符串,对这两个二进制数使用~运算符,&运算符,|运算符//和^运算符,并以二进制字符串形式打印结果(如果无法使用命令行环境 , 可以通过交互式让程序读取字符串)# include <stdio.h># include <limits.h># include <string.h># includ...
2020-04-16 11:29:12 942
原创 c语言实现进制转换函数
1。编写一个函数,输入一个的整型数字,可以选择按照8/10/16进制输出字符串。采用递归形式实现#include<stdio.h>void number_print(int i_num, int type) // type为8、10、16{ int divisor; // 除数 int remainder; // 余数 divisor = i_n...
2020-04-16 11:26:23 3854
原创 c语言分别用位段和一个长整型实现一个循环菜单可以修改设置(用位运算符操作)
设计一个为字段结构以储存下面的信息.// 字段ID : 0 ~ 255 之间的一个数;// 字体大小: 0 ~ 127 之间的一个数;// 对齐: 0 ~ 2 之间的一个数,表示左对齐,居中,右对齐;// 加粗: 开(1)或闭(0)// 斜体: 开(1)或闭(1)// 在一个程序中使用该结构来打印字体参数,并使用循环菜单来让用户改变参数.例如,该程序的一个运行实例如下:// ...
2020-04-16 11:16:37 338
原创 用c实现部分位操作函数
1.计算一个char型字节里(byte)里面有多少bit被置1int bit_set_counts_of_one_byte(char byte){ int count = 0; while (byte) { // byte里面的1右移完之后会变为0 if (byte & 1) { count++; } byte >>= 1; } return ...
2020-04-13 18:00:40 383
原创 用c实现的部分字符串操作函数
1.将一个数字字符串转换为数字."1234" --> 1234//将一个数字字符串转换为数字."1234" --> 1234#include<stdio.h>int convert(char *str){ int k = 0; while(*str != '\0') { k = k * 10 + (*str++) - '0';//字符数ASKII码-...
2020-04-13 17:58:28 349
原创 约瑟夫环问题:用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。
#include<stdio.h>#include<stdlib.h>typedef struct josephnum{ int num;//1-N连续数字 struct josephnum *front;//前指针 struct josephnum *next;//后针域}JCN;void print_help(){ p...
2020-04-13 15:52:05 517
原创 c语言实现歌词播放效果(初级)
#include<stdio.h>#include<stdlib.h>#include<string.h>#include<unistd.h>typedef struct lrc{ int m_time; char lrc_buf[200]; struct lrc *front; struct lrc *next;}LRC;...
2020-04-12 14:12:13 1260 2
原创 c语言单向链表和双向链表的操作
#include<stdio.h>#include <stdlib.h>#include <string.h>#include <ctype.h>typedef struct student{ int num;//学号 char name[10];//姓名 struct student *next;//指针域}...
2020-04-12 14:03:16 318
原创 分割字符串为一组字符串,打开文件一般流程,加解密文件一般流程
分割字符串为一组字符串int msg_deal(char *msg_src,char *msg_done[],char *str)//分割字符串为一组字符串{//msg_src这个是源文本,msg_done:分割后的存储数组,str:以str指定的字符分割 int i=0; msg_done[i] = strtok (msg_src,str); while(msg_done[i] !...
2020-04-12 13:54:41 119
原创 include和define的使用定义
一、include自已写的函数用include "file.h"来包含,宏定义一般也放在file.h文件里。file.h文件格式:int func(int x,int y);预编译:gcc -E main.c -o main.i//生成.i的文件,不检查语法错误。二、define#undefine终止宏定义(1)选择性编译#ifdef AAA//如果定义过AAA的宏就执行一段代码...
2020-04-12 13:42:06 1626
原创 动、静态库制作以及编译代码
gcc 文件名.c -o 文件名//动态编译:库文件没有包含到可执行程序中,文件小。gcc -static 文件名.c -o 文件名//静态编译代码:库文件一起打包到可执行程序中,文件比较大。(1)制作静态库:文件以Lib开头,以.a结束gcc -c 文件名.c -o 文件名.oar rc lib+文件名.a 文件名.o编译程序方法一:gcc -static 文件名.c 文件名.a -...
2020-04-12 13:39:52 187
转载 strtok函数的用法
函数原型:char *strtok(char *s, const char *delim);Function:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。Description:strtok()用来将字符串分割成一个个片段。参数s指向欲分割的字符串,参数delim则为分割字符串,当strtok()在参数s的字符串中发现到参数delim的分割字符时 则会将该字...
2020-04-09 22:43:30 1177
原创 C语言清空缓冲区(流)里的内容
清空缓冲区里的内容 getcahr();//清空缓冲区里的内容 putchar(ch);//把缓冲区里的内容输出 setbuf(stdin, NULL);//把缓冲区里的内容清空 scanf("%*[^\n]%*c");//把缓冲区里的内容清空...
2020-04-09 18:44:57 593
原创 c语言操作文件的一些注意事项
1.移动文件流的读写位置fseek(文件指针,偏移量(正值往前、负值往后),SEEK_SET(开头往前偏)或者SEEK_END(结尾往回偏)、SEEK_CUR(当前位置偏))用ftell()来获取当前的位置2.rewindrewind(文件指针)//把文件指针指定到开头3.打开文件一般流程 FILE *fp = NULL; fp = fopen(“FILE_NAME”,...
2020-04-09 18:43:28 1141
转载 vim编辑器-多行加注释与去注释
在使用vim编辑器时,有时候需要对多行代码进行加注释或去注释,它不像我们在类似于vs等下,需要我们自己输入命令操作,下面将介绍两种方法。方法一:块选择模式1. 插入注释(1)首先按键盘上的ESC进入命令行模式(2)再按Ctrl+V进入VISUAL BLOCK模式(3)利用上下左右键调整需要注释多少行以及行的宽度(4)再按Shift+i或s进入插入模式(5)输入代表注释的符号,比如#...
2020-04-08 16:48:51 257
原创 Ubuntu下deb包的安装方法
deb是debian linus的安装格式,跟red hat的rpm非常相似,最基本的安装命令是:dpkg -i file.debdpkg 是Debian Package的简写,是为Debian 专门开发的套件管理系统,方便软件的安装、更新及移除。所有源自Debian的Linux发行版都使用dpkg,例如Ubuntu、Knoppix 等。以下是一些 Dpkg 的普通用法:1、dpkg ...
2020-04-08 13:58:13 639
转载 C语言清空输入缓冲区
C语言编程 - 清空键盘输入缓冲区清空键盘缓冲区很多种方法,如用fflush(stdin);rewind(stdin);等,但是在linux这些都不起作用,还得我今天试了半天都没成功,上网搜了一下发现setbuf(stdin, NULL);就能直接清空键盘缓冲区了。以下几个实例:Sample one#include <stdio.h>intmain(){...
2020-04-08 11:35:03 2001
原创 ubuntu下C语言环境搭建一般流程
1.安装VMware Workstaion2.安装Ubuntu系统,安装过程可以先把网断开,等安装完成后再连接,硬盘选择50G大小,内存根据实际大小去分配如:4G物理内存分1G,光驱选择使用ISO映像文件(M):先择安装的ISO文件。3.开启ROOT用户 $ sudo passwd root4.更新软件源:$ sudo apt-get update.可以提前在图形界面里选择本地...
2020-04-06 18:54:09 1211
转载 Ubuntu16.04版安装VMwareTools的步骤和没法挂载目录问题的解决方法
vmtool安装流程1.点击vmware 里面的虚拟机——》安装vmware tool2.然后(等待一会)弹出一个界面把里面的 VMwareTools-9.6.1-1378637.tar.gz 复制到自己的家目录3.解压VMwareTools-9.6.1-1378637.tar.gz tar -xzvf VMwareTools-9.6.1-1378637.tar.gz4.进入vmware-...
2020-04-06 17:48:17 376
转载 Ubuntu 开启root用户登录
1.设置root用户密码$ sudo passwd root2.修改配置文件$sudo vim /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf在文件最后添加:greeter-show-manual-login=true如果想钱guest登录选项,继续添加下面内容:allow...
2020-04-06 09:53:23 259
原创 ubuntu18.04用ifconfig命令,只有lo,没有ens33的解决方案
解决方案:1. 输入:lspci或者lspci –v或lspci–vv,先确定网卡(驱动)存在但未启用。2. 输入ifconfig -a命令,可显示eth0和lo。3. 输入ifconfig ens33up,启用网卡。此时用ifconfig,只能看到inet6(ipv6?)的地址,没有inet的地址(即Xshell连接输入的ip)。4.Ubuntu 18.04使用net...
2020-03-16 15:41:47 6361 1
转载 vim配置文件,让编程更随意
vim配置主要有以下优点:1.按F5可以直接编译并执行C、C++、java代码以及执行shell脚本,按“F8”可进行C、C++代码的调试2.自动插入文件头 ,新建C、C++源文件时自动插入表头:包括文件名、作者、联系方式、建立时间等,读者可根据需求自行更改3.映射“Ctrl + A”为全选并复制快捷键,方便复制代码4.按“F2”可以直接消除代码中的空行5.“F3”可列出当前目...
2020-03-12 19:05:54 140
原创 notepad++ 代码注释快捷键
单行、多行注释//方式:ctrl+k 或者ctrl+q取消单行、多行、区块注释:ctrl+shift+k或者ctrl+shift+q第一:编辑相关的快捷键:第二:tab快捷键(在编程中表格中使用的快捷键)第三:搜索相关的快捷键第四:显示相关的快捷键第五:在运行过程中需要用到的快捷键...
2020-03-12 13:01:21 6636
转载 Linux下使用vim编辑C程序
1vi/vim使用1.1vi/vim简介vi/vim是Linux、Unix字符界面下常用的编辑工具,也是系统管理员常用的一种编辑工具。很多Linux发行版都默认安装了vi/vim。vim是vi的升级版,和vi的基本操作相同,其相对于vi的优点主要在于可以根据文件类型高亮显示某些关键字,如C语言关键字,便于编程。vi/vim有两种状态:命令状态和编辑状态。1)命令状态:可以输入相...
2020-03-12 11:50:17 12896 3
原创 使用gdb调试技术
建议使用CGDB,比GDB好用,熟悉VC的调试方式,可以使用DDD。 注意使用GCC编译时要加“-g”参数。 参考gdb参考卡GDB最基本的命令有:gdb programm(启动GDB) b 设断点(要会设4种断点:行断点、函数断点、条件断点、临时断点) run 开始运行程序 bt 打印函数调用堆栈 p 查看变量值 c 从当前断点继续运行到下一个断点 n 单步运行 s 单步运行...
2020-03-12 11:29:55 181
原创 练习gcc编译运行代码
gcc分为4个步骤: 预处理: gcc -E hello.c -o hello.i 编译: gcc -S hello.i -o hello.s 汇编: gcc -c hello.s -o hello.o ...
2020-03-12 11:25:52 584
原创 使用vim常用命令
1.进入插入模式命令 说明 i 在当前光标处进行编辑 I 在行首插入 A 在行末插入 a 在光标后插入编辑 o 在当前行后插入一个新行 O 在当前行前插入一个新行 cw 替换从光标所在位置后到一个单词结尾的字符 2.游标移动按键 说明 h 左 l 右(小写L) j 下 k...
2020-03-12 11:20:44 88
转载 Ubuntu开启SSH登录
0x00前言在新安装的ubuntu系统后,默认是不支持ssh登录的.但是ssh登录时我们平时经常用到的.所以,安装ssh服务吧。下面是安装的经过,如有异议,请指正。0x01安装ssh这里使用的是openssh系列工具 更新下系统工具和依赖,执行sudo apt-get update; 执行安装命令:sudo apt-get install openssh-se...
2020-03-10 15:53:49 599
原创 函数 def定义函数
函数 def定义函数 必须参数 不定长参数:def add(*args) add(1,2,3,4,5)无命名参数 元组 def add(**args)print_info ('wenson',30,‘male’)把键值对入到字典里储存 关于不定长参数的位置:*args放在左边,**kwargs参数放在右边 没有名字的值传给元组,...
2019-04-07 22:21:33 8716
原创 集合 set
集合 set :去重复,做操作 .add 是增加一个整体,如add('op')是加'op'.update 是增加一个一个的字符是加o和pin ,notin集合中包含某个元素 == !=等价和不等价 < 子集超集 后者包含前者 intersection() 取交集 等同于 & union() 并集 等同于 | difference() 差集 等同于 - s...
2019-04-07 22:20:50 94
原创 tar解压、压缩、检索grep、计划任务crontab
crontab计划任务:0(分) 5(时) *(日) *(月) 1(周) tar -zcf /var/backups/home.tgz /home/#*/1:每分钟 * * * * date>>/tmp/date.txt -u user用来设定某个用户的crontab服务 -e 编辑某个用户的crontab文件内容,如果不指定用户,则表示编辑当前用户的cronta...
2018-07-18 17:01:31 311
原创 正则表达式初识
正则表达式\ #为转义如:\. 表示.邮箱匹配:grep -E "[0-9a-zA-Z]+@[0-9a-zA-Z]+\.[a-zA-Z]" a.txt 查找邮箱[a-z] #所有小写字母[A-Z] #所有大写字母[0-9] #所有数字[^0-9] #所有非数字 ^表达取反[0-9][a-z]* #0个或多个小写字母[a-z]+ #至少出现一次小写字母[a-z]? #出现0次或者...
2018-07-18 16:59:45 160
原创 awk一个强大的文件分析工具
awk:一个强大的文件分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显的尤为强大,简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分不规则进行各种分析处理 tail /etc/passwd | awk -F":" '{print $1}'#单引号常用的内置变量 FNR 浏览文件的记录数 FS 设置输入域分隔符...
2018-07-18 16:58:54 1197
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人