Linux 命令行生成密码的 10 种方式
内容来自: 10 Ways to Generate a Random Password from the Linux Command Line
Linux 好玩的事儿是达成一件事情可以用上百种方式. 即使如生成随机密码这么简单的需求都可以用一打的命令来实现.
这些命令从 Command-Line Fu 搜集而来, 而且都在 Linux 上验证了这些命令没有问题.
生成密码
对于这些生成随机数的命令, 可以调整以输出不同长度的密码. 当然, 你可以使用第一个 x 符号来生成密码, 如果你不需要这么长的密码. 好在有类似于 LastPass 这样的密码管理工具, 我们不再需要痛苦的记忆各种密码了.
**1. 将日期结果做 hash 运算 **
date +%s | sha256sum | base64 | head -c 32 ; echo
2. 使用 openssl 的 rand 函数
openssl rand -base64 32
3. 使用 /dev/urandom
< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;
4. 使用 /dev/urandom
tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1
5. 使用 string
命令 + /dev/urandom
strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 30 | tr -d '\n'; echo
6. 使用 /dev/urandom
< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c6
7. 使用 dd 命令
dd if=/dev/urandom bs=1 count=32 2>/dev/null | base64 -w 0 | rev | cut -b 2- | rev
8. 创建一个只需要左手就可以输入的密码
</dev/urandom tr -dc '12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB' | head -c8; echo ""
9. 可以把生成密码的命令写成函数,保存在 ~/.bashrc 内,这样可以方便下次生成密码
randpw(){ < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;}
需要生成密码的时候, 可以在 CLI 执行: randpw
即可生成密码.
10. md5sum
date | md5sum
Linux 命令行生成密码的 10 种方式的更多相关文章
- Linux下修改Mysql密码的三种方式
前言 有时我们会忘记Mysql的密码,或者想改一个密码,以下将对这两种情况修改密码的三种解决方法做个总结 本文都以用户为 root 为例 一.拥有原来的myql的root的密码 方法一: 在mysql ...
- Linux 命令行生成随机密码的十种方法
Linux操作系统的一大优点是对于同样一件事情,你可以使用高达数百种方法来实现它.例如,你可以通过数十种方法来生成随机密码.本文将介绍生成随机密码的十种方法.这些方法均收集于Command-Line ...
- Linux下随机生成密码的命令总结
有时候经常为如何设置一个安全.符合密码复杂度的密码而绞尽脑汁,说实话,这实在是一个体力活而且浪费时间,更重要的是设置密码的时候经常纠结.终于有一天实在忍不住了,于是学习.整理了一下如何使用Linux下 ...
- 给新手的 10 个有用 Linux 命令行技巧
我记得我第一次使用 Linux 的时候,我还习惯于 Windows 的图形界面,我真的很讨厌 Linux 终端.那时候我觉得命令难以记忆,不能正确使用它们.随着时间推移,我意识到了 Linux 终端的 ...
- linux===给新手的 10 个有用 Linux 命令行技巧(转)
本文转自:http://www.codeceo.com/article/10-linux-useful-command.html?ref=myread 仅用作学习交流使用.如有侵权,立删 我记得我第一 ...
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---10
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- 在Linux命令行下令人惊叹的惊叹号(!)
'!'符号在Linux中不但可以用作否定符号,还可以用来从历史命令记录中取出命令或不加修改的执行之前运行的命令.下面的所有命令都已经在Bash Shell中经过确切地检验.尽管我没有试过,但大多都不能 ...
- wpa_supplicant 移植及 linux 命令行模式配置无线上网
本文涉及内容为linux 命令行模式配置无线上网 及 wpa_supplicant 移植到开发板的过程,仅供参考. 1.源码下载 wpa_supplicant 源码下载地址 :http://hosta ...
- 分布式进阶(十) linux命令行下载文件以及常用工具:wget、Prozilla、MyGet、Linuxdown、Curl、Axel
linux命令行下载文件以及常用工具:wget.Prozilla.MyGet.Linuxdown.Curl.Axel 本文介绍常用的几种命令行式的下载工具:wget.Prozilla.MyGet.Li ...
随机推荐
- iOS开发跳转指定页面
for (UIViewController *VC in self.navigationController.viewControllers) { if ([VC isKindOfClass:[Car ...
- python redis插件安装
#tar xvzf redis-py-2.2.1.tar.gz #cd redis-py-2.2.1 #python setup.py install 附件: https://app.yinxia ...
- 一日一句 SQL [持续更新] MySQL + Oracle
1 . group by 和 having字句: group by是根据列值对数据进行分组, having子句用于对分组的数据进行过滤. [ having 针对的对象是分好的组] eg: employ ...
- wpf 验证方法
效果图,当放鼠标到文本框上会显示出错的提示.
- monitor_guiagent
monitor_guiagent monitor_guiagent.sh #!/usr/bin/env bash #filename : monitor_guiagent.sh #Usage: /us ...
- 【刷题】SPOJ 705 SUBST1 - New Distinct Substrings
Given a string, we need to find the total number of its distinct substrings. Input T- number of test ...
- 蒟蒻Orion还要学的东西!
这个ID多元化真是个麻烦的事情...... 一会KamijouIndex一会dedicatus545一会Orion的,乱死了啊啊啊啊 数据结构 圆方树 ETT 仙人掌 可持久化树套树 数学 洲阁筛 m ...
- 一些技巧 && 常数优化 && 出现の错误
开坑原因 7.21 今天DTZ大爷教了我一个算欧拉函数的好方法......是质因数复杂度的 这让我想到,这些小技巧小idea,很多时候,可能就是考场上最致命.最一击必杀的"大招" ...
- 【基础】ASP.net MVC 文件下载的几种方法(欢迎讨论)
在ASP.net MVC 中有几种下载文件的方法 前提:要下载的文件必须是在服务器目录中的,至于不在web项目server目录中的文件下载我不知道,但是还挺想了解的. 第一种:最简单的超链接方法,&l ...
- hdu5652:India and China Origins(并查集)
倒序操作用并查集判断是否连通,新技能get√(其实以前就会了 这题细节很多...搞得整个程序都是调试输出,几度看不下去想要重写 并查集到现在大概掌握了两个基本用途:判断是否连通 / 路径压缩(上一篇b ...