【Linux 系统编程】shell 命令和流程控制(二)

前言Linxu shell 脚本基础这里介绍到第二篇,详细介绍shell 命令和流程控制,这部分介绍三类命令,在学习时大家应该加以比较学习。Linux shell脚本基础课程前面一篇介绍的都是语法基础的开头、注释、变量和 环境变量,这里将介绍shell命令和控制流程的第一部分,在shell脚本中可以使用三类命令,而控制流程就放在下一讲吧。 正文1.1.5 Shell命令和流程控制在shell脚本中可以使用三类命令: 1)Unix 命令:虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令。这些命令通常是用来进行文件和文字操作的。     Continue Reading
Xiho's avatar
Xiho Sep 29, 2016
 | 

【Linux 系统编程】shell 脚本基础学习(一)

前言Linux shell 脚本基础我们将分几篇文章来记录,希望对我们这些初次接触Linxu shell脚本编程的初学者有帮助;Linxu shell 脚本基础学习先来介绍shell的语法,开头、注释、变量和环境,虽然不涉及到具体的东西,但是大号基础是以后学习的前提,很多时候我们拿到别人的开源库,需要编译使用,但是由于各种原因,总是编译不成功,其中就有shell 脚本,如果我们看不懂别人的脚本,编译出错,还查不来原因。(比如一个空格导致编译失败,你能查出原因么?) 正文1.Linux 脚本编写基础1.1 语法的基本介绍1.1.1 开头程序必须以下面的行开始(必须放在文件的第一行): #!/bin/bash 符号”#!”用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。当编辑好脚本时,如果要执行该脚本,还必须使其可执行。要使脚本可执行:编译 chmod u+x filename 这样才能用./filename 来运行 1.1.2 注释在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。     Continue Reading
Xiho's avatar
Xiho Sep 29, 2016
 | 

【Linux 系统编程】VIM的安装配置及使用

前言Learn vim and it will be your last text editor. There isn’t any better text editor that I know of. It is hard to learn, but incredible to use.学习VIM,它会是你最后的文本编辑器。没有任何好转的文本编辑器,我知道的。这是很难学,但令人难以置信的使用。 VI是LINUX下最老牌的编辑工具,而VIM则是VI的升级版本,LINUX系统必备啊~~ 摘要(以下已Ubuntu系统为例) VIM的安装和配置1、VIM安装既然VIM编辑器是在Linux 系统环境下运行的,那么我们首先要在Ubuntu上安装VIM;在命令行敲入“vi”后按”tab”键,可以查看到目前系统中有没有安装Vim,如果没有的话就只会显示vi和vim.tiny。如下图(我是已经安装了的) 如果没有安装VIM,普通用户下输入命令: sudo apt-get install vim-gtk 然后按照提示,输入“y”后,回车,之后不要进行任何操作,等待安装完成。安装完成后,在命令行输入vi,按“tab”键。如上图,说明vim已经安装成功~     Continue Reading
Xiho's avatar
Xiho Sep 29, 2016
 | 

【Linux 系统编程】常用的一些基本命令

前言Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统,下面就来简单总结下常用的基础操作命令。 基本命令(1)指令名称:pwdpwd 命令也是最常用最基本的命令之一,用于显示用户当前所在的目录。 (2)指令名称:cdcd命令不仅显示当前状态,还改变当前状态,它的用法跟dos下的cd命令基本一致。 cd ..可进入上一层目录 cd -可进入上一个进入的目录 cd ~可进入用户的home目录 (3)指令名称:cp 使用方式: cp [options] source dest cp [options] source... directory 说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。     Continue Reading
Xiho's avatar
Xiho Sep 28, 2016
 | 

Android NDK开发(一)JNI简介及调用流程

前言前段时间学习了C、C++的一些基础知识后,了解了它们的编码风格,要想掌握NDK开发,前提是会使用JNI,下面我们开始简单的介绍吧! JNI简介  JNI全称是Java Native Interface(Java本地接口),本地接口就是指用C和C++开发的接口。从Java1.1开始,JNI标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI一开始是为了本地已编译语言,尤其是C和C++而设计的,但是它并不妨碍你使用其他编程语言,只要调用约定受支持就可以了。   开发JNI程序会受到系统环境的限制,因为用C/C++语言写出来的代码或模块,编译过程当中要依赖当前操作系统环境所提供的一些库函数,并和本地库链接在一起。而且编译后生成的二进制代码只能在本地操作系统环境下运行,因为不同的操作系统环境,有自己的本地库和CPU指令集,而且各个平台对标准C/C++的规范和标准库函数实现方式也有所区别。这就造成使用了JNI接口的JAVA程序,不再像以前那样自由的跨平台。如果要实现跨平台,就必须将本地代码在不同的操作系统平台下编译出相应的动态库。     Continue Reading
Xiho's avatar
Xiho Sep 23, 2016
 | 

Xshell 远程连接Linux服务器

我这里有一台电脑,装的Ubuntu系统,当我想使用时,又要去使用另外一台机器(如果没有,可以直接去阿里云整一台主机),更何况文件传输也不方便,比较麻烦,后来,看着同事用的Xshell 远程连接linux,挺方便的就折腾了一番,当然,putty,xftp是个很不错的选择。 xshell和xftp是windows下访问ubuntu(linux)服务器的一个非常好使的工具。 ubuntu安装ssh服务器首先,判断Ubuntu是否安装了ssh服务:1、输入: #ps -e |grep ssh 如果服务已经启动,则可以同时看到“ssh-agent”和“sshd”,否则表示没有安装服务,或没有开机启动 。     Continue Reading
Xiho's avatar
Xiho Sep 20, 2016
 | 

C++ new和delete操作符使用

在C语言中,动态分配内存用 malloc() 函数,释放内存用 free() 函数。如下所示: int *p = (int*) malloc( sizeof(int) * 10 ); //分配10个int型的内存空间 free(p); //释放内存 在C++中,这两个函数仍然可以使用,但是C++又新增了两个关键字,new 和 delete:new 用来动态分配内存,delete 用来释放内存。     Continue Reading
Xiho's avatar
Xiho Sep 12, 2016
 | 

C++ string字符串的增删改查

c++ 提供的string类包含了若干实用的成员函数,大大方便了字符串的增加、删除、更改、查询等操作。 插入字符串insert()函数可以在string字符串中置顶的位置插入另一个字符串,它的原型为: string& insert (size_t pos, const string& str); 看这个插入的格式我们就能猜想到,pos表示要插入的下标;str表示要插入的字符串,它可以是string变量,也可以是C风格的字符串。     Continue Reading
Xiho's avatar
Xiho Sep 11, 2016
 | 

C++ string类和字符串的访问和拼接操作

C++ 增强了对字符串的支持,除了可以使用c中的字符串,还可以使用内置的数据类型string,string类处理字符串会翻遍很多,完全可以代替C语言中的char 数组和char 指针。 使用sting类需要包含头文件< sting >, 下面我们就来介绍怎么使用。 string 的几种用法: #include <iostream> #include <string> using namespace std; void main(){ string s1; string s2 = "c plus plus"; string s3 = s2; string s4(5, 's'); cout << s1 << s2 << s3 << s4 << endl; system("pause"); } 输出结果: c plus plusc plus plussssss 请按任意键继续. . .     Continue Reading
Xiho's avatar
Xiho Sep 11, 2016
 | 

android中签名、证书、公钥密钥的概念及使用

资料来源于Android 官方文档:https://developer.android.com/studio/publish/app-signing.html还有些资料来源于网络。加以整理! 公钥和私钥的概念在现代密码体制中加密和解密是采用不同的密钥(公开密钥),也就是公开密钥算法(也叫非对称算法、双钥算法)”,每个通信方均需要两个密钥,即公钥和私钥,这两把密钥可以互为加解密。公钥是公开的,不需要保密,而私钥是由个人自己持有,并且必须妥善保管和注意保密。 证书的概念数字证书则是由证书认证机构(CA)对证书申请者真实身份验证之后,用CA的根证书对申请人的一些基本信息以及申请人的公钥进行签名(相当于加盖发证书机 构的公章)后形成的一个数字文件。CA完成签发证书后,会将证书发布在CA的证书库(目录服务器)中,任何人都可以查询和下载,因此数字证书和公钥一样是公开的。实际上,数字证书就是经过CA认证过的公钥。     Continue Reading
Xiho's avatar
Xiho Sep 02, 2016
 |