java运行gogo shell,shell脚本转换成二进制文件之shc命令安装使用
摘要:
1. 本文shc命令CentOS6和CentOS7都可使用
2. 安装shc命令依赖gcc编译器,如果没有请安装
shc(generic shell script compiler)是一个专业的加密shell脚本的工具。它的作用是把shell脚本转换为一个可执行的二进制文件,这样可以很好地隐藏脚本中IP、密码、目录路径等敏感信息。
1.下载shc源码包:
wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz
2.创建一个安装临时目录
mkdir -p /usr/local/man/man1
#说明:make install时会把man文件放入/usr/local/man/man1目录,如果该目录不存在需提前建好
3. 解压编译
tar xf shc-3.8.9.tgz
cd shc-3.8.9/
make #不需要make test之类的操作,过不去,直接make和install即可
make install
4. 检查是否安装成功
which shc
5. 可以写一个简单的脚本进行测试
[root@zhaoyulin scripts]# cat test #写好的shell脚本加不加执行权限都行,我这里没加
#!/bin/bash
echo 1 2 3 4 5
[root@zhaoyulin scripts]# shc -v -T -r -f test #开始转换二进制
shc shll=bash
shc [-i]=-c
shc [-x]=exec '%s' "$@"
shc [-l]=
shc opts=
shc: cc test.x.c -o test.x
shc: strip test.x
shc: chmod go-r test.x
#参数解释(光使用-v和-f即可):
-r:放松安全。做一个二进制的可再发行执行在不同的系统上运行相同的操作
-f:指定文件
-T:允许二进制可追踪(使用:strace,ptrace,truss,等)
-v:冗长的编译
[root@zhaoyulin scripts]# ll test*
-rw-r--r-- 1 root root 27 Mar 22 13:44 test #原脚本
-rwx--x--x 1 root root 11032 Mar 22 14:11 test.x #被转换成执行的二进制脚本
-rw-r--r-- 1 root root 9190 Mar 22 14:11 test.x.c #生成的C源代码文件
[root@zhaoyulin scripts]# ./test.x #执行测试
1 2 3 4 5
6. shc命令用法查看一下如下网址的shc.html文件即可
java运行gogo shell,shell脚本转换成二进制文件之shc命令安装使用相关推荐
- shell 实现txt转换成html
原理: awk命令,分割格式化的txt(txt文件格式以"|"分割开的)成数组,然后拼接成html格式(html - head - title - body - table) sh ...
- 一个java的DES加解密类转换成C#
原文:一个java的DES加解密类转换成C# 一个java的des加密解密代码如下: //package com.visionsky.util;import java.security.*; //im ...
- java 项目 gbk 转utf-8_[idea]Java的GBK编码项目统一转换成utf-8格式
Java的GBK编码项目统一转换成utf-8格式 0. 直接运行jar包 java -jar GBK2UTF8.jar 1. 构建 原理 使用common io批量将java编码从GBK转UTF-8 ...
- MySQL脚本转换成SQLSERVER脚本
navicat----工具----数据传输,将MYSQL脚本转换成SQLSERVER
- vue3+axios:图片链接转换成二进制文件流后并提交服务器
一.基本思路 1.使用Image类创建一个新的图片. 2.将图片转换成base64. 3.将base64图片使用File类转换成二进制文件流 4.将二进制文件流使用 FormData类转换成binar ...
- 如何将caj转换成PDF且不另外安装其他软件
经常接触文献的小伙伴们对于caj格式肯定非常熟悉了,但如果将CAJ转成PDF总是需要下载各种软件,不仅会捆绑安装一堆乱七八糟的东西,有时转换还未必能成功,那么是否有不用安装其他软件就能将CAJ转PDF ...
- shell中将字符串转换成数字
我有一个字符串"96.56",怎样才能将它转换成一个小数,或者是一个整数96也行. shell中无需转换,可以直接用作数字. 转换成整数: # echo "96.56&q ...
- Java使用aspse实现Excel文件转换成PDF文件
使用Java代码把Excel文件转换成PDF文件 需要引用aspose包,引入操作我写了一个博客,地址如下 https://blog.csdn.net/weixin_46713508/article/ ...
- Java中怎样将Json字符串转换成实体类
场景 在Java中调用接口获取Json数据后,怎样转换成对应的实体类进行接受与存储. 实现 打开浏览器输入在线Json格式化,这里推荐使用: http://www.bejson.com/ 选择Json ...
最新文章
- 2021计算机技能高考考纲,2021年湖北省技能高考技能考试大纲(机械类).pdf
- retinaface人脸姿态
- Java Script 学习笔记(一)
- [转]Joomla! 1.5中form表单的实现方式
- linux开源软件经验,Ubuntu Linux经验汇总
- 最小生成树Prim算法和Kruskal算法
- mysql max datetime_MYSQL在联接语句中选择MAX日期
- JAVA的字符串拼接与性能
- 搭建AD域环境时出现错误,未能为域创建GPO 出现扩展错误解决办法
- 剑指offer面试题66. 构建乘积数组
- oracle数据库xsb创建,在Linux下安装oracle数据库
- C++ UNICODE 文件读写相关
- 大数据服务器环境准备(三台服务)
- ALVA Systems发布AR新品 倪光南院士致辞
- Windows证书对话框权限提升漏洞-CVE-2019-1388
- 最优化问题——线性规划模型
- 对于K 均值聚类的尝试
- iOS - 接入 Live2D
- 标准C函数库头文件、POSIX标准库头文件和Windows API函数库头文件说明
- 强大的CSS:颜色、背景和剪切
热门文章
- 成都Web前端培训课程都学习什么内容?
- springboot服务使用策略模式
- Oracle中连接本地ORCL数据库
- 纯电阻电路的分析方法——回路电流法
- 浪子回头之邱关源第五版P76_3_10回路电流法multisim方正及matlab解法
- Spring循环依赖解决思路
- [Android] Surface、SurfaceHolder与SurfaceView
- WEB 面试题(五) ASP.NET 基础
- Nvidia Tesla和Quadro、GeForce的区别
- hdu 3833 YY's new problem