终端命令对字符串进行sha1、md5、base64、urlencode/urldecode
sha1、md5、base64
mac
$ echo -n foo|shasum
0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33 -
$ echo -n foo|shasum -a
2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae -
$ echo -n foo|openssl dgst -sha1
0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33
$ echo -n foo|openssl dgst -sha256
2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
$ echo -n foo|md5
acbd18db4cc2f85cedef654fccc4a4d8
$ md5 -s foo
MD5 ("foo") = acbd18db4cc2f85cedef654fccc4a4d8
$ echo -n foo|openssl dgst -md5
acbd18db4cc2f85cedef654fccc4a4d8
$ echo -n foo|base64
Zm9v
$ echo Zm9v|base64 -D;echo
foo
$ echo -n foo|openssl enc -base64
Zm9v
$ echo Zm9v|openssl enc -base64 -d;echo
foo
$ echo -n foo|openssl dgst -md5 -binary|openssl enc -base64
rL0Y20zC+Fzt72VPzMSk2A==
openssl命令可以简单写:
openssl sha1
openssl sha -sha256
openssl md5
openssl base64
openssl base64 -d
linux
# echo -n foo|shasum
0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33 -
# echo -n foo|shasum -a
2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae -
# echo -n foo|openssl dgst -sha1
(stdin)= 0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33
# echo -n foo|openssl dgst -sha256
(stdin)= 2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
# echo -n foo|md5sum
acbd18db4cc2f85cedef654fccc4a4d8 -
# echo -n foo|openssl dgst -md5
(stdin)= acbd18db4cc2f85cedef654fccc4a4d8
# echo -n foo|base64
Zm9v
# echo Zm9v|base64 -d;echo
foo
# echo -n foo|openssl enc -base64
Zm9v
# echo Zm9v|openssl enc -base64 -d;echo
foo
# echo -n foo|openssl dgst -md5 -binary|openssl enc -base64
rL0Y20zC+Fzt72VPzMSk2A==
openssl命令可以简单写:
openssl sha1
openssl sha256
openssl sha sha256
openssl md5
openssl base64
openssl base64 -d
urlencode/urldecode[1]
$ alias urldecode='python -c "import sys, urllib as ul; \
print ul.unquote_plus(sys.argv[])"' $ alias urlencode='python -c "import sys, urllib as ul; \
print ul.quote_plus(sys.argv[])"' $ urlencode 'lalala啦啦啦'
lalala%E5%%A6%E5%%A6%E5%%A6 $ urldecode 'alala%E5%95%A6%E5%95%A6%E5%95%A6'
alala啦啦啦
可以将alias个语句放到.bashrc或者其他shell的启动rc文件里(如:.zshrc),用source载入。
已安装的shell和当前shell:
$ cat /etc/shells
# List of acceptable shells for chpass().
# Ftpd will not allow users to connect who are not using
# one of these shells. /bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh $ echo $
-/bin/zsh
$ echo $SHELL
/bin/zsh
$ env|grep SHELL
SHELL=/bin/zsh
引用:
[1] Decoding URL encoding (percent encoding)
终端命令对字符串进行sha1、md5、base64、urlencode/urldecode的更多相关文章
- linux shell 命令获取字符串/文件的MD5值
获取字符串的MD5值: 字符串“hello”的MD5: $ echo -n 'hello'|md5sum|cut -d ' ' -f1 得到的MD5值: 5d41402abc4b2a76b9719d9 ...
- Java 对字符串数据进行MD5/SHA1哈希散列运算
Java对字符串数据进行MD5/SHA1哈希散列运算 [java] view plain copy package cn.aibo.test; import java.security.Message ...
- 一条命令,秒秒钟完成MD5、SHA1校验,这就叫效率!
相信很多奋斗在运维战线的小伙伴们经常会遇到版本升级之类的问题.笔者之前所在的公司每次进行版本发布的时候都会附带MD5校验哈希值,每次升级之前一般都要核对MD5哈希值的,刚刚开始的时候对Linux并不是 ...
- 作为前端Web开发者,这12个终端命令不可不会
对于开发人员来说,终端是最重要的工具之一.掌握终端,能够有效的提升开发人员的工作流程.使用终端,许多日常任务都被简化为了编写简单的命令并按下 Enter 按钮. 本文列举了一系列 Linux 命令,旨 ...
- linux学习:特殊符号,数学运算,图像与数组与部分终端命令用法整理
指令:let.expr.array.convert.tput.date.read.md5.ln.apt.系统信息 一:特殊符号用法整理 系统变量 $# 是传给脚本的参数个数 $0 是脚本本身的名字 $ ...
- FreeSwitch 终端命令详细介绍
FreeSwitch版本:1.6.9 以下为部分终端命令 alias 语法: alias [add|stickyadd] <alias> <command> | del [&l ...
- 【Java提高】---通过UUID、SHA-1、Base64组合加密
通过UUID.SHA-1.Base64组合加密 该篇文章实现的最终效果是: 1)加密是不可逆的. 2)相同字符串加密产生后的字符串都不一样 3)所以要想比较两个字符串是否相等,需要用已经加过密的字符串 ...
- mac 终端 常用命令,MacOS 常用终端命令大全,mac 在当前目录打开终端
MacOS 常用终端命令大全:目录操作dircmp——比较两个目录的内容——dircmp dir1 dir2文件操作pg分页格式化显示文件内容——pg filenameod——显示非文本文件的内容—— ...
- python通过sha1和base64生成签名
一.python生成时间戳 # 案例 生成时间戳 import time t = time.time() print(t) # 原始时间数据 print(int(t)) # 秒级时间戳 print(i ...
随机推荐
- git原理:引用规格
引用规格(refspec):就是在 .git/config 里面那个配置远程仓库的东西 [remote "origin"]url = https://github.com/test ...
- Traverse the dict in Python
We usually use the following 2 ways to traverse a dict: 1: for d in dic 2: for d in dic.keys() Which ...
- Linux系统通过console口连接交换机
一.安装minicomUbuntu安装:sudo apt-get install minicom.centos安装:yum install minicom二.配置minicomUbuntu输入:sud ...
- 服务中的 API 网关(API Gateway)
我们知道在微服务架构风格中,一个大应用被拆分成为了多个小的服务系统提供出来,这些小的系统他们可以自成体系,也就是说这些小系统可以拥有自己的数据库,框架甚至语言等,这些小系统通常以提供 Rest Api ...
- Python学习进程(3)Python基本数据类型
本节介绍在Python语法中不同的变量数据类型. (1)基本数据类型: >>> a=10; >>> b=10.0; >>> c=T ...
- arcgis for flex map遮罩
效果1:map的遮罩(对整个map进行遮罩) 效果2:对某个图层进行遮罩
- java PinYinUtils 拼音工具类
package com.sicdt.library.core.utils; import java.util.HashSet; import java.util.Set; import net.sou ...
- ubuntu里设置从串口登录
1) Create a file called /etc/init/ttyS0.conf containing the following: # ttySAC0 - getty # # This se ...
- 【Head First Servlets and JSP】笔记11:cookie
容器如何知道客户是谁?(这并不是HTTP能实现的!IP地址不能唯一的标识用户,另外,非必要不采用HTTPS 继续mark孤傲苍狼的博客,百科全书 cookie——Header——字典——键值对—— 延 ...
- INSPIRED启示录 读书笔记 - 第40章 最佳实践经验
十大要点 1.产品管理的职责:许多产品经理将大把的时间浪费在与产品管理无关的工作上 2.用户体验:对于大多数软件产品来说,用户体验就是产品的生命 3.机会评估:用方便快捷的机会评估方法取代过时的市场需 ...