shell--实战小经验

记一次从零到getshell的渗透历程 0x00 前期 拿到测试范围清单后,首先用脚本获取了下各个子站的标题,基本都是XXX管理系统。浏览器查看后,各个子站也大同小异,纯登录系统,带验证码。这些系统基本都是jsp写的,逮到了两个没有验证码的小宝贝,一番暴力破解,小宝贝对我说:别爱我,没结果。又看到了两个站返回的Set-Cookie头:rememberMe=deleteMe; 很明显,这是Apache Shiro。打了一波exp,没有反应,放弃。搞了三天啥都没搞出来,和女朋友出去玩散散心,还是很高兴。 0x01 初显进展 测试范围内有六个门户 阅读详情

目录

1、判断当前文件是否存在目录或者文件

2、判断目录下文件的个数

3、对日期进行排序

4、替换文件内某个字符串

5、给文件中数据加上引号

6、shell导出mysql数据表指定行数记录


周末优化了一下博客,把之前记录经验式的文章集合到这个地方,方便自己和大家查看。

1、判断当前文件是否存在目录或者文件

获取指定目录下的所有文件名

path=/home/data
 
files=$(ls ${path})
 
for filename in $files
 
do

判断文件是不是目录,是就跳过

if [ -d ${path}/$filename ]
then
    echo "$fliename是一个目录"
    continue
fi
   echo "$filename是普通文件"
done

2、判断目录下文件的个数

判断当前目录下的文件个数:

count=`ls | wc -w`
 
echo $count 

判断指定目录下的文件个数:

count=`ls /home/data | wc -w`
 
echo $count

分析:

| 是管道描述符,将ls /home/data的输出作为wc -w指令的输入

wc 是命令,主要用来计算一个文件的行数、单词数、字符数

-w 表示统计单词数

-l 表示统计行数

-c 表示统计字节数

-m 表示统计字符数

3、对日期进行排序

比如目前有一个名为date的txt文本,里面有一堆时间日期的数据

20180720

20180616

20180415

20180916

20180916

现在我们使用sort命令对它进行排序和去重,并重定向到新文件中

cat date.txt | sort -n | sort -u > new_date.txt
 
cat new_date.txt

就可以实现对日期的排序,做到按日期先后处理内容了。

解释:

sort -n 表示 排序

sort -u 表示 去重

sort -r 表示 对当前排序取反

sort -o 可以重定向到原文件

sort  -r date.txt -o date.txt  

4、替换文件内某个字符串

数据库中有些时间的字段为月-日没有年。这将导致今年结束后,明年会出现日期难以对账的问题。为了匹配,可以在脚本中把年份加上去。

sed -i s/'0420'/'20180420'/g `grep '0420' -rl a.sql `

通过这句话,即可将0420替换为20180420

解释:

sed:

-i表示对文件操作,` `表示将grep 的结果作为操作文件

s/'0420'/'20180420'/g 表示将0420替换为20180420

/g表示一行中有多个0420的时候,都替换。没有g的话就是仅替换第一个0420。

grep:

-r 表示查找当前目录和其子目录
-l 表示仅列出符合条件的文件名,传给sed

5、给文件中数据加上引号

给属性加单引号:

ret=`(echo a b c d|sed "s/\w\+/'&'/g")`  
 
echo $ret

输出 'a' 'b' 'c' 'd'

将空格替换为逗号:

ret=`(echo a b c d|sed 's/\s\+/,/g')`  
 
echo $ret

输出 a,b,c,d

将空格替换为逗号的同时给属性加上单引号:

ret=`(echo a b c d|sed 's/\s\+/,/g')|sed "s/\w\+/'&'/g"`  
 
echo $ret

输出'a','b','c','d'

6、shell导出mysql数据表指定行数记录

总结一下shell脚本导出mysql指定行数的方法。

导出(10,‘zf’)的后n条记录:

mysqldump -u $username -p$password $dbname $tbname -w "(id,name)>(10,'zf') limit n";

以上方法的字符类型的记录记得加单引号,而且id需要为自增型。

导出前n条记录:

mysqldump -u $username -p$password $dbname $tbname -w "true limit n";

导出6行到第11行记录:

mysqldump -u $username -p$password $dbname $tbname -w "true limit 5,6";

 

linux项目开发经验 立即下载

相关推荐

[AHK] 自动化获取通达信股票代码:从消息钩子到数据提取

本文详细介绍了如何使用AHK(AutoHotkey)通过Windows消息钩子技术自动化获取通达信股票代码,实现高效数据提取和交易自动化。文章涵盖消息机制原理、AHK脚本开发、性能优化及安全注意事项,为股票交易者提供了一套完整的解决方案。

weixin_42614269的博客 616

LINUX命令后面常见的>/dev/null 解释

Linux中的标准输入输出 0 是标准输入,一般是从键盘获得输入 1 是标准输出,一般是输出到屏幕了 2 是标准错误,有时候屏幕上可以看到,但是重定向的文件中看不到的就是它了 >为重定向符号 >/dev/null 是一个特殊的设备文件,这个文件接收到任何数据都会被丢弃,俗称“黑洞” 2>/dev/null意思就是把错误输出到“黑洞” ,也就是说如果你的命令出错...

春日野穹 190万+

VisionPro九点标定实战:从相机拍照到机器人精准抓取的完整流程

本文详细介绍了VisionPro九点标定技术在工业自动化中的应用,从相机拍照到机器人精准抓取的完整流程。通过硬件配置、标定步骤和实战技巧的解析,帮助工程师实现高精度视觉引导系统,提升生产效率。特别适合需要解决二维图像坐标与物理空间转换问题的自动化项目。

weixin_30664051的博客 406

shell脚本一些小技巧

shell脚本小技巧

guanfengliang的专栏 624

RS485信号测量避坑指南:示波器抓包常见问题与波形分析技巧

本文详细解析了RS485信号测量中的常见问题与解决方案,包括差分信号测量基础、终端电阻配置、共模干扰处理等关键技巧。通过实测波形案例和优化建议,帮助工程师有效提升RS485通信的可靠性和抗干扰能力,适用于工业自动化、远程监测等场景。

kappa的博客 615

Java本地AI推理初体验:Jlama+LangChain4j构建离线问答系统

Jlama 是专为 Java 生态设计的现代化大型语言模型(LLM)推理引擎,旨在让开发者无需依赖外部服务即可直接在 Java 应用中运行本地化模型推理。本文将结合Jlama + langchain4j 实现一个本地可运行的简单问答Demo。

2501_92589102的博客 407

sqlmap (--os-shell)的使用

文章目录 第一步 搭建存在sql注入的网站第二步 扫描注入点第三步 选择网站的语言第四步 输入网站的绝对路径第五步 查看权限 第一步 搭建存在sql注入的网站 第二步 扫描注入点 python sqlmap.py -u "http://192.168.232.129/cms/show.php?id=33" --os-shell 第三步 选择网站的语言 第四步 输入网站的绝对路径 第五步 查看权限 .

qq_50854662的博客 499

解决Windows 10安装语言包时遇到的0x800F0954错误

在安装Windows 10操作系统的语言包时,如果遇到错误代码0x800F0954的提示,这无疑会让许多用户感到困惑和无助。这个错误通常意味着在安装过程中遇到了一些阻碍,导致无法正常完成语言包的安装。本文将为大家详细解析这个错误代码0x800F0954,并提供一系列有效的解决方法,帮助大家顺利安装所需的语言包。

nntxthml的博客 3793

运维实战中的Shell 开发经验总结

运维实战中的Shell 开发经验总结 无论是系统运维,还是应用运维,均可分为“纯手工”—> “脚本化”—> “自动化”—>“智能化”几个阶段。 其中自动化阶段,主要是将一些重复性人工操作和运维经验封装为程序或脚本,一方面避免重复性操作及风险,另一方面提高执行效率。在自动化运维的转变过程中,经常使用的可能就是shell脚本了。 今天主要分享下shell脚本开发在运维工作中的一些经验总结。 小脚本有大智慧,别小看几十行代码,夹杂着系统设计、代码规范和操作经验等等细节,在建设自动化运维的工作中,

TriAngel_的博客 549

让 PyCharm 代码“发光”:高亮插件与特效全攻略

PyCharm 作为一款强大的 Python IDE,支持多种插件让代码“发光”——无论是动态输入特效、彩虹括号,还是霓虹主题,都能让你的代码脱颖而出!进入 File → Settings → Editor → Color Scheme → Rainbow Brackets。进入 File → Settings → Appearance & Behavior → Material Theme。进入 File → Settings → Editor → Color Scheme → General。

qq_43580271的博客 3834

MicroPython学习:在STM32上进行移植

本文将介绍如何在STM32上移植MicroPython,并提供相应的源代码。通过以上步骤,你已经成功地将MicroPython移植到STM32上,并可以使用MicroPython语言编写和运行代码。你可以进一步探索MicroPython的功能和API,以利用STM32的各种外设和功能。使用STM32CubeProgrammer或其他适当的烧录工具,将编译生成的MicroPython固件烧录到STM32微控制器中。打开该文件,并根据你的STM32微控制器类型进行必要的配置更改。模块来控制STM32的LED。

JeeVue的博客 1237

七年老运维实战中的 Shell 开发经验总结

点击上方肉眼品世界,右上角选择“设为星标深度价值体系传递无论是系统运维,还是应用运维,均可分为“纯手工”—> “脚本化”—> “自动化”—>“智能化”...

weixin_45727359的博客 451

matlab处理las点云(1)——las/laz格式解析【2024最新版】

matlab中的las/laz格式解析。博客长期更新,本文最近一次更新时间为:2024年11月9日。

点云侠的博客 8460

【shell】shell脚本实战-循环的控制,2024年最新vivo面试经验

在我们使用循环语句进行循环的过程中,有时候需要在未达到循环结束条件时强制跳出循环,那么Shell给我们提供了四个命令来控制循环语句continue 跳过当次循环break 跳过整个循环exit 退出脚本return 退出函数。

2401_84139697的博客 725

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

shell for循环命令行_七年老运维实战中的 Shell 开发经验总结

Tips:Linux云计算免费课程报名中,点击文末“”快速抢!来源:良许LinuxID:liangxuxiansheng无论是系统运维,还是应用运维,均可分为“纯手工”—> “脚本化”—> “自动化”—>“智能化”几个阶段,其中自动化阶段,主要是将一些重复性人工操作和运维经验封装为程序或脚本,一方面避免重复性操作及风险,另一方面提高执行效率。在自动化运维的转变过程中...

weixin_39830020的博客 161

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

单片机Shell开发避坑指南:从Putty特殊字符处理到内存安全的7个实战经验

本文分享了单片机Shell开发的7个实战经验,涵盖Putty特殊字符处理、内存安全、串口数据完整性等关键问题。通过详细的代码示例和防御性编程策略,帮助开发者避免常见陷阱,构建健壮的嵌入式命令行交互系统,特别适用于Arduino等资源受限环境。

weixin_29186249的博客 211

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

跟着老男孩一步步学习Shell高级编程实战

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://oldboy.blog.51cto.com/2561410/1264627 本shell高级编程课程共72节,循序渐进的讲解了shell初级到高级的应用,特别是课程中融入了大量的生产实战案例,部分案例完全超过生产工作标准,被广大学生和网友誉为业界最有深度但通熟易懂的实战讲...

weixin_30279671的博客 289

怎么利用shell批量把图片改名(数字排序)

是真的很水逆qaq

林一百二十八的博客 1103

你可能不知道的Shell

Shell也叫做命令行界面,它是*nix操作系统下用户和计算机的交互界面。Shell这个词是指操作系统中提供访问内核服务的程序。 这篇文章向大家介绍Shell一些非广为人知、但却实用有趣的知识,权当品尝shell主食后的甜点吧。 科普 先科普几个你可能不知道的事实: Shell几乎是和Unix操作系统一起诞生,第一个Unix Shell是肯·汤普逊(Ken Thompson

qindehong的专栏 622

unix shell

shell unix

happylzs2008的专栏 415

Shell实战特训:从零到精通的自动化运维之路

当然上面是前提,我还是一名网络讲师,为什么要当网络讲师?因为这些年,我在考取各类证书上花费已超5万,购买各种直播课或录播课的费用也超1万。但我发现,购买的单个课程中所包含的内容有限,深度也不够,还需要自己额外拓展知识,学习起来费心费力。所以,我决定录制内容更有深度的课程。我是csdn博主崔崇鑫,拥有粉丝7万+,也是“领域专家: 操作系统技术领域”和“新星创作者: 云计算技术领域"

崔崇鑫的博客,你linux/云运维工作中的百科全书。 871

我与Shell的30天:从“命令小白“到“自动化高手“的成长手记

用${}明确变量边界(echo "文件:${LOG_DIR}/app.log"比echo "文件:$LOG_DIR/app.log"更安全,避免路径中有特殊字符时出错)。tar -czf "$BACKUP_DIR/www_$DATE.tar.gz" -C "$BACKUP_DIR" "www_$DATE" # 打包压缩。初始化变量(即使赋默认值,如LOG_DIR=${LOG_DIR:-"/var/log"},表示如果LOG_DIR未定义,默认用/var/log)。

2502_92028135的博客 1970
上一篇: Qt--实战小经验
下一篇: ubuntu--实战小经验
Qt上位机开发
Qt上位机开发 领域专家: C/C++技术领域 领域专家: C/C++技术领域
博客等级 码龄9年 9664粉丝 178原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值