- 博客(21)
- 资源 (5)
- 收藏
- 关注
原创 正则表达式(二)
上一篇博客我们介绍了正则表达式的前两部分,现在我们来继续介绍后两部分。3、Class/RangeClass是一组字符或者一个组,用中括号'[]'括起来。Range是放置在Class中的一组特殊的字符。例如我们想要找到所有后面跟着‘e’的从‘A’到‘L’的大写字母,则正则表达式为:[A-L]eRange的组成有字母[a-z]或者[A-Z],数字[0-9]。如果想采用否定的范围,...
2019-04-19 11:02:39
319
原创 正则表达式(一)
在系统中处理文件或者文件夹时,都需要对正则表达式有一定的理解。正则表达式是用来定义模式的字符,模式可以用来搜索文本文件或者列出文件和文件夹。正则表达式的各个部分有很多方法来进行区分,为了便于理解,我们将它分成较多的几个部分,使每个部分尽可能的简单。正则表达式有以下几个部分:1)Characters and Groups2)Anchors3)Class/Range4)Q...
2019-04-18 17:17:00
1170
原创 输入输出重定向
在Linux终端下运行命令时有很多方法可以重定向信息。在终端中有一些重定向约定,可以让信息的重定向变得非常简单。重定向约定有以下几项:Output Append Input Error Unnamed Pipe Tee Named Pipe1、Output输出管道用来将标准输出输出到屏幕以外的其他地方,通常是输出到屏幕上,当然我们也可以把信息输出到文件中。输出管道是”...
2019-04-18 15:22:18
508
原创 编辑创建文本
使用‘touch’和‘nano’两个命令可以编辑创建文本,但在此之前,我们先了解以下文件的时间戳。1、时间戳每个文件和文件夹都有时间戳,实际上,一个文件有三个时间戳:1)Access Time (atime)2)Change Time (ctime)3)Modification Time (mtime)运行以下命令可以查看文件的时间戳:stat [file name]...
2019-04-18 15:21:17
405
原创 文件比较
我们经常会遇到需要比较两个文件的内容的情况。例如已经将可以工作的代码进行的备份,如果哪一天不小心误操作了导致代码不能工作,只需要将出问题的工程中的代码和我们备份的进行比较,替换掉不同的文件即可。文件比较可以同时检查文本文件和二进制文件。1、文本文件我们首先创建两个文本文件来进行比较。文件内容包含用户的帮助信息,在终端中运行以下命令:adduser --help > addu...
2019-04-18 15:20:22
1054
原创 Sed
Sed 是我们经常用到的一个命令,全称是Streaming EDitor。sed命令是一个编辑器,将文件编辑为一个流。将文件作为流就是使用管道(>或|)从另一个命令传递它,或者直接将它加载到sed中。这个命令的工作原理和其他编辑器一样,除了不现实文件和允许可视化编程。命令是被传递给sed来操纵流。sed的五个基本功能如下:1)Search2)Replace3)Delete...
2019-04-18 15:17:58
358
原创 root权限
root权限允许访问Linux系统上所有的功能。在Windows上就是我们所说的管理员权限。有两种方式执行root权限:1)、su2)、sudo1、susu命令允许我们在终端中切换用户账户。当我们切换到root账户时须要考虑几个地方,现在我们先来看看如何使用这个命令。命令的基本格式如下:su <username>因为在终端中指定了账户的用户名,...
2019-04-17 16:19:53
1306
原创 文件权限
学习文件权限对于Linux的日常使用非常重要,文件权限适用于除FAT格式外的所有文件。最开始需要再系统上先安装ACl,运行以下命令:sudo apt install acl1、权限符号权限的符号基本上有四种,如下:1)R read2)W write3)X execute4)D directoryps:“D”权限是一个只读的权限,无法修改。...
2019-04-16 12:15:22
542
原创 USB端口管理
今天在Linux社区看到一篇非常有意思的帖子,讲的时USB端口管理,来和大家分享以下。USB Port Management现在USB的设备越来越多,鼠标、键盘、摄像头等等,很难找到一个没有USB的系统。在我们的学习和生活中,我们经常会用到它,但是我们对USB的了解也是仅限于书本上学到的理论知识。当系统连接过多的USB设备时,可能会出现各种各样我们没有想到的问题。接下来将一起来看看Linu...
2019-04-15 22:37:43
2280
原创 Shell——初识
Shell是个C语言编写的程序,用户可以使用它来操作Linux。Shell既是一种命令语言,又是一种编程语言。Shell脚本指一种为Shell编写的脚本程序。Shell的编程环境配置很简单,只需要一个文件编辑器和一个解释器就ok了,Linux下Shell种类有很多,Bourne Shell(/usr/bin/sh或/bin/sh) Bourne Again Shell(/bin/bash...
2019-04-12 14:15:05
368
1
原创 初识GCC
GNU编译器套件(GNU Compiler Collection),简称GCC,初衷是为GNU操作系统开发的编译套件。GCC支持多种平台框架如x86、ARM、MIPS和PowerPC以及多种开发语言,所以收到了开发者的青睐。现在的GCC已经处于开源软件的核心地位上。GCC包含多种前端处理器,可以翻译各种不同的语言,同时它也是一种多目标的编译器,可以为不同的计算机框架生成可执行文件。其实我们...
2019-04-12 13:03:42
395
原创 CMake学习(七)——添加Dashboard 的支持
这一节,我们将添加向Dashboard提交测试数据的支持。之前的项目中我们已经了一些测试,现在我们只需要运行这些测试并且将结果提交给Dashboard 即可。为了添加Dashboard 的支持,我们需要在顶层CMakeLists.txt文件中添加CTest 模块:# enable dashboard scriptinginclude (CTest)并且我们创建一个CTestConfi...
2019-04-11 10:05:14
821
原创 CMake学习(六)——构建一个安装程序
假设我们要将工程分享给其他人使用,我们希望能在各种各样的平台上提供二进制和源代码的发行版。这和我们之前在安装与测试那一节执行的安装步骤有一些不同,那里我们是从源代码构建二进制文件。在本例中,我们将 构建一个支持二进制安装和包特性管理的安装包,如cygwin、debian、RPMs 等。因此我们可以使用CPack 生成指定平台的安装程序。具体来说,我们需要在顶层CMakeLists.txt底部添加如...
2019-04-11 09:45:33
820
原创 CMake学习(五)——添加生成文件和生成器
这一节我们将展示如何将生成的源文件文件添加到在应用程序的构建过程中。在本例中,我们将生成一个预计算平方根的表作为构建过程的一部分,接着将这个表编译到我们的应用中。为此,首先我们需要一个生成表的程序,在MathFunctions 子目录下,添加一个MakeTable.cxx文件,代码如下:// A simple program that builds a sqrt table #inclu...
2019-04-10 19:32:11
2603
原创 CMake学习(四)——自检
这一篇博客我们将在之前的项目中添加一些代码实现简单的自检功能。代码的描述是这样的,依据目标平台是否有log和exp函数(当然,几乎所有的平台都有这两个函数,当时我们假定我们的项目不一定有),如果有的话,在mysqrt函数中应这两个函数计算平方根。首先,我们需要检测在项目中这两个函数是否可用,通过在顶层CMakeLists.txt文件中调用CheckFunctionExists模块来实现,在CM...
2019-04-10 16:23:31
1429
1
原创 CMake学习(三)——安装规则和测试支持
在这一篇博客中,我们将在项目中添加安装规则和测试支持。1、安装规则安装规则非常简单,对于MathFunctions 库来说,我们要设置安装库和头文件只需要在MathFunctions’的CMakeLists.txt文件中加入两行代码:install (TARGETS MathFunctions DESTINATION bin)install (FILES MathFunctions...
2019-04-10 11:46:53
1341
原创 CMake学习(二)——添加库
这一篇博客我们将在上一篇的项目中添加一个库,库中有计算平方根的函数,这样在执行的时候就可以使调用这个库而不是编译器提供的标准平方根函数。1、子目录建立我们将放到子目录MathFunctions中,并且添加CMakeLists.txt文件,代码如下:add_library(MathFunctions mysqrt.cxx)add_library()是添加库的命令,在之前已经讲过。...
2019-04-09 17:05:04
2145
原创 CMake学习(一)——版本号、头文件配置
接上一篇博客,打架已经对CMake有了一个初步的认识,从这篇博客开始,将会逐步对CMake的学习进行更新。推荐的参考网站时CMake的官网,上面有非常详细的讲解,这里我们简化了一下方便大家快速上手。CMake英文指导手册一、单源码工程最基本的工程是由源码编译生成的可执行文件,其CMakeLists.txt文件也只需要简单的几行代码就ok了,CMakeLists.txt文件代码如下:...
2019-04-08 17:33:16
3224
原创 CMake初步学习
CMake是一款开源的源代码组织管理软件,如果是一直在Windows环境下编程的同学可能对这方面没有什么深刻的认识,因为这部分的工作都由IDE来帮我们完成了,如我们点击运行按钮则IDE会自动地帮我们将源码进行预处理、编译、汇编、链接等操作,项目的架构通过IDE的UI界面也变得十分简单,所需要的库只需要进行响应的操作便可以加入到我们的工程中进行使用。但是在很多项目中,尤其是嵌入式的相关项目,我们...
2019-04-06 17:09:44
809
原创 Linux环境下OpenCV的测试
接上一篇博客,在上一篇中,介绍了OpenCV的安装,在这一片博客中,我们通过一个小程序来检验安装的结果。还是在OpenCV的官网中,给出了测试用例,网址如下;OpenCV的使用1、工程建立首先是建一个简单的工程,作用为显示一张图片,代码如下:#include <stdio.h>#include <opencv2/opencv.hpp>using n...
2019-04-06 15:25:16
2798
原创 Linux环境下OpenCV的安装
最近由于实验室的项目都做到差不多了,终于有时间来充充电!博主也是最近才开始学习Linux系统和OpenCV,所以有不正确的地方希望大家谅解和指出。本篇帖子参考了优快云上其他大佬的思路。Linux环境下OpenCV的安装最好的参考资料我推荐的时OpenCV官网上给出的参考手册,步骤十分详细,我们直接一步一步地来就好了。这里贴出网址:OpenCV官方指导教程一、安装依赖包和所需软件点...
2019-04-06 14:48:02
3063
1
imageJ二次开发资料(中文)
2019-03-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人