利用PHP脚本在Linux下用md5函数加密字符串的方法


Posted in PHP onJune 29, 2015
#touch  a.php  //创建a.php文件

#vi a.php  //用vi 编辑a.php文件

将<?php echo md5(123456); ?>输入进去后保存

#php  a.php  //运行a.php文件

显示:e10adc3949ba59abbe56e057f20f883e

A.在linux或Unix上,md5sum是用来计算和校验文件报文摘要的工具程序。一般来说,安装了Linux后,就会有md5sum这个工具,直接在命令行终端直接运行。可以用下面的命令来获取md5sum命令帮助 man md5sum

#md5sum ?help

有个提示:“With no FILE, or when FILE is -, read standard input.”翻译过来就是“如果没有输入文件选项或者文件选项为 -   ,则从标砖读取输入内容”,即可以直接从键盘读取字符串来加密。

利用md5sum加密字符串的方法

# md5sum     //然后回车

123456      //输入123456.然后按两次ctrl+d.

显示:

 

123456e10adc3949ba59abbe56e057f20f883e
     红色代表加密后的值

还可以用管道命令:

 

#echo   -n '123123' | md5sum

 

或者写成md5加密脚本,名字叫md5.sh,

将以下内容复制进脚本里:

 

#!/bin/bash
echo   -n   $1 | md5sum | awk '{print $1}'

 

保存后,给脚本执行权限。

 

#sh  md5.sh   123456

显示:e10adc3949ba59abbe56e057f20f883e

B.其实也可以将文本放入文本文件,然后用md5sum 加密改文本,也可以得到字符串加密的值。过程如下:

 

#touch a.txt
#echo  -n   123456 > a.txt    //将123456写进文本文件,不能丢了 ?n参数,避免回车符干扰
#md5sum    a.txt

显示:e10adc3949ba59abbe56e057f20f883e     a.txt

 

ctrl+d有两个含义:

一是向程序发送文件输入结束符EOF。

二是向程序发送exit退出指令。程序收到信号后具体动作是结束输入、然后等待,还是直接退出,那就要看该程序捕获信号后是如何操作的了。
md5sum属于第一个含义。两次strl+d了,第一次读取EOF指令,再次捕获就会当成exit指令。而shell一类的程序,会直接把ctrl+d解析为退出指令。

PHP 相关文章推荐
自动跳转中英文页面
Oct 09 PHP
BBS(php &amp; mysql)完整版(八)
Oct 09 PHP
社区(php&amp;&amp;mysql)一
Oct 09 PHP
《PHP边学边教》(04.编写简易的通讯录――视频教程1)
Dec 13 PHP
php多文件上传下载示例分享
Feb 20 PHP
php实现的xml操作类
Jan 15 PHP
详解php魔术方法(Magic methods)的使用方法
Feb 14 PHP
php结合ajax实现手机发红包的案例
Oct 13 PHP
PHP异常处理定义与使用方法分析
Jul 25 PHP
PHP使用GD库制作验证码的方法(点击验证码或看不清会刷新验证码)
Aug 15 PHP
PHP封装的page分页类定义与用法完整示例
Dec 24 PHP
php中目录操作opendir()、readdir()及scandir()用法示例
Jun 08 PHP
Linux系统递归生成目录中文件的md5的方法
Jun 29 #PHP
基于CakePHP实现的简单博客系统实例
Jun 28 #PHP
Codeigniter的dom类用法实例
Jun 26 #PHP
PHP关联数组实现根据元素值删除元素的方法
Jun 26 #PHP
PHP实现事件机制实例分析
Jun 26 #PHP
php使用MySQL保存session会话的方法
Jun 26 #PHP
Linux操作系统安装LAMP环境
Jun 26 #PHP
You might like
浅析PHP中call user func()函数及如何使用call user func调用自定义函数
2015/11/05 PHP
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
window.parent与window.openner区别介绍
2012/04/12 Javascript
一个基于jquery的文本框记数器
2012/09/19 Javascript
jQuery中ajax错误调试分析
2016/12/01 Javascript
深入理解Angularjs中$http.post与$.post
2017/05/19 Javascript
浅谈react前后端同构渲染
2017/09/20 Javascript
JS实现的简单表单验证功能示例
2017/10/13 Javascript
vue2.0移动端滑动事件vue-touch的实例代码
2018/11/27 Javascript
vue 2.5.1 源码学习 之Vue.extend 和 data的合并策略
2019/06/04 Javascript
vue前后分离调起微信支付
2019/07/29 Javascript
微信小程序实现带放大效果的轮播图
2020/05/26 Javascript
[00:11]战神迅矛
2019/03/06 DOTA
详解Python中with语句的用法
2015/04/15 Python
python从list列表中选出一个数和其对应的坐标方法
2019/07/20 Python
django2.2安装错误最全的解决方案(小结)
2019/09/24 Python
利用Python小工具实现3秒钟将视频转换为音频
2019/10/29 Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
2020/01/20 Python
Python3.x+pyqtgraph实现数据可视化教程
2020/03/14 Python
经验丰富程序员才知道的8种高级Python技巧
2020/07/27 Python
Python实现LR1文法的完整实例代码
2020/10/25 Python
html5指南-6.如何创建离线web应用程序实现离线访问
2013/01/07 HTML / CSS
天美时手表加拿大官网:Timex加拿大
2016/09/01 全球购物
如何做好总经理助理
2013/11/12 职场文书
委托证明的格式
2014/01/10 职场文书
新郎父亲婚宴答谢词
2014/01/11 职场文书
大学生旷课检讨书
2014/01/22 职场文书
人事主管岗位职责
2014/01/30 职场文书
软件项目开发计划书
2014/05/01 职场文书
电焊工岗位工作职责
2014/07/09 职场文书
2014年副班长工作总结
2014/12/10 职场文书
2015年社区创卫工作总结
2015/04/21 职场文书
2015年党风建设工作总结
2015/04/29 职场文书
力克胡哲观后感
2015/06/10 职场文书
《打电话》教学反思
2016/02/22 职场文书
JPA 通过Specification如何实现复杂查询
2021/11/23 Java/Android