将一整数逆序后放入一数组中,要求递归实现
```c #include <stdio.h> void convert(int *result, int num) { if (num < 10) { *result = num; } else { *result = num % 10; convert(result + 1, num / 10); } } int main(int argc, char *argv[]) { int result[3] = {}; int num = 5129; convert(result, num); for (int i = 0; i <= sizeof(result) / sizeof(result[0]); i++) { printf("%d", result[i]......
Nginx安装Let’s Encrypt 免费SSL证书
Let’s Encrypt 是个免费、自动化、开放的证书签发服务。 官网: [https://letsencrypt.org/](https://letsencrypt.org/) 可以使用Let’s Encrypt 官网提供的工具来申请证书,本文用了 `acme-tiny` 这个更为小巧的开源工具 [https://github.com/diafygi/acme-tiny][1]。 ## Nginx支持ssl Nginx必须有http_ssl_module,可通过nginx -V来查看。如果当初编译nginx时没有加入这个模块,则需要重新编译。 ## 创建帐号和 CSR 文件 > 如果多个域名请注意修改相应前缀区分,避免造成证书混乱。 文章中出现的域名部分以 `yurendu.com` 为例。 ```shell mkdir ssl/ ......
Linux下GBK转UTF8文件编码批量转换命令
## 使用iconv 转换 用法见: [iconv命令介绍](http://man.yurendu.com/iconv) > `iconv` 是比较常用的方法,也是系统自带的。下面这两个命令是第三方的,分别可以用来转换文件编码和文件名编码,并且这两个命令都可以用 `yum` 方式安装。 ## enca 查看文件的编码 ### enca 用法 ```shell $ enca -L zh_CN file # 检查文件的编码 $ enca -L zh_CN -x UTF-8 file # 将文件编码转换为"UTF-8"编码 $ enca -L zh_CN -x UTF-8 file1 file2 # 如果不想覆盖原文件可以这样 ``` 除了有检查文件编码的功能以外,”enca”还有一个好处就是如果文......
有趣的代码注释
```plain _ooOoo_ o8888888o 88" . "88 (| -_- |) O\ = /O ____/`---'\____ .' \\| |// `. / \\||| : |||// \ / _||||| -:- |||||- \ | | \\\ - /// | | | \_| ''\---/'' | | \ .-\__ `-` ......
CentOS下系统时间同步和时区的修改和设置
## 修正时区 ```bash rm -rf /etc/localtime #删除当前默认时区 ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #复制替换默认时区为上海 ``` ## 手动修正时间 ```bash date -s '09:16:00 2013-01-21' ``` ## 时间自动同步和校正 ```bash yum install -y ntp #安装时间同步服务(组件) ntpdate time.nist.gov #设置同步服务器 ``` 部分系统已经安装了NTP服务,系统会根据当前记录的时区(第一步操作)自动连接ntp服务器校正时间。 > 推荐的几个时间同步服务器 time.nuri.net 0.asia.pool.ntp.org 1.a......
CentOS 编译安装 PHP7
## 从GitHub下载php7安装包 ``` bash wget -c --no-check-certificate -O php7-src-master.zip https://github.com/php/php-src/archive/master.zip # 解压php7包 unzip -q php7-src-master.zip && cd php-src-master ``` ## 安装依赖包 ``` bash yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel epel-release libmcrypt-devel `......
CentOS 编译安装 MySQL5.7
## 下载 所有版本下载地址: http://dev.mysql.com/downloads/mysql/ 此处用 5.7.10 ``` bash wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.10.tar.gz ``` ## 安装依赖包 ``` bash yum -y install gcc gcc-c++ ncurses ncurses-devel cmake ``` ## 添加mysql用户和组 ``` bash useradd -M -s /sbin/nologin mysql ``` ## 预编译 ``` bash cd mysql-5.7.10 cmake . -DCMAKE_INSTALL_PR......
Mysql初始化root密码和允许远程访问
mysql默认root用户没有密码,输入 `mysql –u root` 进入mysql ## 初始化root密码 ```sql mysql > update user set password=PASSWORD('123456') where User='root'; ``` ## 允许mysql远程访问 可以使用以下三种方式: ### 1 改表 ```sql mysql -u root –p; mysql > use mysql; mysql > update user set host = '%' where user = 'root'; mysql > flush privileges; ``` ### 2 授权 例如,你想root使用123456密码从任何主机连接到mysql服务器: ```sql ......
Ubuntu忘记root密码的解决办法
ubuntu的root默认是禁止使用的,在安装的时候也没有要求设置root的密码。要使用,给root设置密码就行了 ```bash sudo passwd root ``` 如果只是普通用户密码忘了,用root就可以修改。如果root密码忘了就进入单用户模式。 ## 进入单用户模式: 1 在开机引导到GRUB等待界面(GRUB loading, please wait…)这里的时候按下ESC键来进入启动菜单,选择相应内核版本的Recovery Mode,按e键进入编辑状态。 2 移动光标,将"ro recovery nomodeset" 修改为"rw single init=/bin/bash"以后 按 `ctrl+X` 就可以即进入单用户模式, 3 然后我们就可以用命令 passwd 用户名来修改密码了。 见到......
Install zsh and oh-my-zsh on Linux
Oh-My-Zsh is an open source, community-driven framework for managing your ZSH configuration. It comes bundled with a ton of helpful functions, helpers, plugins, themes, and few things that make you shout… “OH MY ZSHELL!”. ## Install ZSH oh-my-zsh should work with any recent release of zsh, the minimum recommended version is 4.3.9. First you need to install ZSH. If not installed just fire ......