作者:hqiang1984
Excel或Python生成随机字符串
Excel:
随机小写字母:=CHAR(INT(RAND()*25+97))
随机大写字母:=CHAR(INT(RAND()*25+65))
随机数字:=CHAR(INT(RAND()*9+48))
随机数字大小写字母:IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97))))
混合6位:=CONCATENATE(IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))))
Python:
''.join(random.sample('abcdefghijklmnopqrstuvwxyzABCDEFGHIGKLMNOPQRSTUVWXYZ0123456789', length))
安装certbot并申请ssl证书
- 添加存储库 add-apt-repository ppa:certbot/certbot
- 安装Certbot的Nginx软件包 apt install python-certbot-nginx certbot
- 使用Certbot自动完成SSL证书申请和配置,Certbot会自动修改你的nginx配置文件 certbot –nginx -d example.org
- 自动更新证书日期,写个脚本,包含如下内容
service nginx stop
certbot renew –dry-run
certbot renew
service nginx start
介绍一个非常好用的二维码生成网址
草料二维码 https://cli.im/
Mac OS brew更新卡住
在使用mac笔记本安装软件时需要更新brew update,但一直卡住。
解决方法1: 在/usr/local/bin/brew 添加 HOMEBREW_NO_AUTO_UPDATE=1
或者 HOMEBREW_NO_AUTO_UPDATE=1 brew install somepackage
方法2: brew update –debug –verbose ,然后 brew update –force
三星galaxy s7 edge手机无法拷贝文件
环境:macOS, 三星galaxy s7 edge, Android File Transfer
之前使用Android File Transfer拷贝文件到手机后发现后续无法再使用此功能,目前在 https://android.stackexchange.com/questions/46315/not-all-files-are-visible-over-mtp 发现是android的bug。
解决方法: 设置->应用程序->存储(在最下端)->立即清理
Linux如何设置时区和时间
安装zonetime包
apt install ztdata
选择时区的命令:
tzselect
设置timezone的时区
sudo timedatectl set-timezone ‘Asia/Shanghai’
或者
echo “Asia/Shanghai” > /etc/timezone
设置时间
rm -rf /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
MacOS登入Ubuntu虚拟环境
环境: MacOS, Ubuntu, Clion
在做C语言开发的时候经常要涉及Linux中的库,因此在MacOS上用VirtualBox安装Ubuntu环境,通过terminal直接登入上去。但有时要用Ubuntu上的Clion,所以安装XQuartz这个支持图形界面的登入工具。使用登入如下:
ssh -Y jerry@192.168.56.101
(注:-Y 代表启用信任的X11 forwarding)
Clion编译带glibc库的C语言
环境: MacOS 10.11.6, Clion 2019
由于C语言自带的ANSI lib内容库不太丰富,所以直接使用linux自带的glibc库。主程序直接引用 glibc头文件
#include <glib.h>
CMakeLists.txt如下:
cmake_minimum_required(VERSION 3.14)
project(untitled C)
set(CMAKE_C_STANDARD 99)
add_executable(untitled main.c)
find_package(PkgConfig)
pkg_check_modules(GLIB2 REQUIRED glib-2.0)
target_include_directories(untitled PUBLIC ${GLIB2_INCLUDE_DIRS})
target_link_libraries(untitled ${GLIB2_LIBRARIES})
但编译是老是发现无法找到libintl库,最后发现home-brew没有link到gettext,执行如下: brew link –force gettext 即可
linux 时间戳转换
date -d @$(date -u +%s)