2019-10-11 15:50:28 bigwriteshark 阅读数 27
  • PHP7字符串模块

    King老师精心打造的PHP7字符串实战课程,由浅入深的讲解了PHP中字符串模块,并介绍了一些常用的字符串相关操作,让我们一起开启字符串之旅吧~ 山哥出品,必属精品!

    15604 人正在学习 去看看 何山

linux下有个工具叫strings,可以打印出文件中所有可打印字符串,但strings功能比较单一,无法对字符串进行过滤,也不能区分ascii码和unicode,而且无法找到一些不以null结尾的字符串。今天介绍一个github上的免费开源小工具:StringsPlus。

StringsPlus可以通过通配符,批量扫描文件,找出文件中所有疑似字符串的资源,并打印到输出文件中,还可以指定疑似字符串的长度,限定只有连续长度超过指定长度,才打印输出,是分析破解二进制文件的一个好利器。

 

1.下载地址:

https://github.com/bigwriteshark/StringsPlus.git     git地址

https://codeload.github.com/bigwriteshark/StringsPlus/zip/master       zip下载地址

项目地址:https://github.com/bigwriteshark/StringsPlus

 

2.使用方法:

这个工具的zip包里,已经提供了编译好的strings+.exe(for win)和strings+(for linux),可以拷贝下来直接用,也可以自行编译源码,编译方法就不介绍了,很简单的代码。

- 以下介绍一下windows下的运行:

我目录下有个a.apk,我想通过打印这个文件里的明文字符串,来分析或者解密这个文件的功能。

d:\> strings+ . -n my.apk -l 10     

-- .是my.apk所在的目录,可以是绝对目录,也可以是相对目录

-n my.apk 指定要扫描的文件是my.apk

-l 10 指定要打印的字符串要超过10个(太小了会列出很多不相关的字符串,加大分析难度)

运行结束后,会多出一个t.my.apk.txt文件,文件内容包括两部分:ascii串区和unicode串区

第二栏是字符串出现的字节位置,可以配合可定位的二进制编译器来定位字符串,查看上下文。

 

 

 

2018-08-10 09:58:02 qingfengxd1 阅读数 2002
  • PHP7字符串模块

    King老师精心打造的PHP7字符串实战课程,由浅入深的讲解了PHP中字符串模块,并介绍了一些常用的字符串相关操作,让我们一起开启字符串之旅吧~ 山哥出品,必属精品!

    15604 人正在学习 去看看 何山

1、采用cut

ex:‘快乐大本营 2018’

code:echo '快乐大本营 2018'|cut -d' ' -f1

其中:-d' ' 表示以空格为分隔符

           -f1 表示第一个字段

2、采用awk

提取当前文件夹下jpg图片的第三个字段,图片名称:xxx__xxx__12.jpg

ls -l |grep ".jpg" |awk  -F"__"  '{print$2}'

 

2019-01-19 15:44:49 mzyp 阅读数 1327
  • PHP7字符串模块

    King老师精心打造的PHP7字符串实战课程,由浅入深的讲解了PHP中字符串模块,并介绍了一些常用的字符串相关操作,让我们一起开启字符串之旅吧~ 山哥出品,必属精品!

    15604 人正在学习 去看看 何山

新需求:要求循环提取linux日志文件两个指定字符串之间的字符串。

先后尝试了grep、sed等指令,均无果而终。

直到看到下图百度搜索结果,执行以下指令终获成功:awk 'BEGIN {key=1} />>> Script started./,/>>> Script Finished./  {print $0> "key" key ".txt"} />>> Script Finished./ {++key}' /root/Downloads/kpi.log,其中awk也是linux标准指令,key是循环次数,初始定义其值为1,>>> Script started.是指定的开始字符串,>>> Script started.是指定的结束字符串,/root/Downloads/kpi.log是日志文件。

执行成功后,在当前路径下自动循环提取以字符串“>>> Script started.”开始到以字符串”>>> Script Finished.“结束的字符串,并分别存储到以key为前缀的小文件中

2016-09-10 19:37:27 sinat_20265495 阅读数 2142
  • PHP7字符串模块

    King老师精心打造的PHP7字符串实战课程,由浅入深的讲解了PHP中字符串模块,并介绍了一些常用的字符串相关操作,让我们一起开启字符串之旅吧~ 山哥出品,必属精品!

    15604 人正在学习 去看看 何山
在某些情况下需要对输入的字符串进行处理,提取其中的需要的信息. 
比如在linux中输入”mkdir test”,新建test文件夹,就需要提取其中的test字符. 
提取的方法需要boost库中的函数,提取代码如下:
#include <string>
#include <iostream>
#include <vector>
#include <boost/algorithm/string.hpp>
using namespace std;
int main(){
    vector<string> itemlist;
    vector<string> contentlist;
    string strinfo="name#wangkaixuan$id#111$password#222";
    boost::split(itemlist, strinfo, boost::is_any_of("$"));
    for (int i = 0; i < itemlist.size(); ++i)
    {
        cout<<"strlist_"<<i<<"="<<itemlist[i]<<endl;
        temp= itemlist[i];
        boost::split(contentlist, temp, boost::is_any_of("#"));
        cout<<"contentlist_0"<<"="<<contentlist[0]<<endl;
        cout<<"contentlist_1"<<"="<<contentlist[1]<<endl;
    }
    return 0;
}


运行结果:

2020-01-19 10:51:45 zyjtx321 阅读数 204
  • PHP7字符串模块

    King老师精心打造的PHP7字符串实战课程,由浅入深的讲解了PHP中字符串模块,并介绍了一些常用的字符串相关操作,让我们一起开启字符串之旅吧~ 山哥出品,必属精品!

    15604 人正在学习 去看看 何山
  • 把多个文件中包含某字符串的行提取出来存入一个文件中

[root@T tmp]# grep 'abc' file1 file2 file3 > newfile
或者
[root@T tmp]# grep 'abc' * > newfile
  • 去除重复的行

[root@T tmp]# awk '!a[$0]++' newfile > newfile2.txt

注: windows可以在Git Bash里面执行这两条命令!!!

没有更多推荐了,返回首页