
小工具
文章平均质量分 58
快乐的阿常艾念宝
我喜欢我的生活,在历史的倒影中钓取山水的亮色
展开
-
在Linux的世界中怎么玩转定时器任务
经历了两件,在linux下两则使用定时器任务的案例,觉得有必要总结下自己所经历的`Linux`中应该如何使用定时器的方法原创 2024-12-28 11:10:07 · 420 阅读 · 0 评论 -
curl也支持断点续传
访问外网,遭遇下载问题,可以使用curl断点续传和不断尝试功能,灵巧方便原创 2024-12-21 14:54:12 · 544 阅读 · 0 评论 -
小而美的sshpass以及ssh命令scp模式使用
通过研究客户端和服务器之间的免密拷贝处理,觉得sshpass工具具有小而美的特点,值得推荐。而且ssh的scp模式能够避免中间文件的产生,更是值得推荐原创 2024-09-09 21:10:51 · 785 阅读 · 0 评论 -
如何设计一个C语言面向结构体的内存数据库
在熟悉了一款定制版的内存数据库实现后,觉得它的设计比较初级,像极了私人玩具,眼界也不够宽广,遂整理了下思路,觉得可以在sqlite的基础上做一款面向结构体的内存数据库组件原创 2024-07-13 22:43:14 · 497 阅读 · 0 评论 -
后知后觉Makefile之二(专谈并行编译)
在梳理旧实现前,阅读了GNU官网make的手册,使得修补实践对于并行编译的使用,更符合原笔原意原创 2024-04-27 15:42:49 · 760 阅读 · 0 评论 -
Makefile后知后觉几件事
通过近期对于makefile的实践,积累一些对于makefile的后知后觉,以利于让makefile编程依然充满乐趣原创 2024-04-20 11:20:13 · 356 阅读 · 0 评论 -
wireshark利用sshdump自身组件进行远程实时抓包过滤
wireshark自身支持远程抓包,但默认上并不安装此组件,有远程抓包需求的同学,可以通过安装过程将此组件安装进去,就可以支持远程在线、实时抓包和过滤原创 2024-01-27 11:12:08 · 2474 阅读 · 0 评论 -
利用ssh-copy-id进行简单的SSH免密登录配置方法
利用ssh-copy-id可以进行ssh免密登录配置,以减少手工出错的机会原创 2024-01-27 10:45:16 · 637 阅读 · 0 评论 -
利用wireshark lua扩展能力增加自定义解析器[注释解读版]
利用wireshark lua扩展能力增加自定义解析器,固化重复动作,非常方便。对于官网的解析器例子采用详尽注释的方式,以利于理解原创 2024-01-20 15:40:50 · 1672 阅读 · 0 评论 -
如此理解sed会简单
如果从sed命令的抽象语法结构去理解各种sed命令,会清晰地理解和记忆一些常用的操作。另外,抽线语法结构更清晰地揭示了sed其实就是命令行编辑器!原创 2023-11-10 22:02:07 · 342 阅读 · 0 评论 -
利用.netrc文件实现ftp自动登录
ftp工具利用.netrc的配置,可以实现ftp的自动登录和自动执行一些固定化的动作,但最后停在交互模式下,等待用户手工上传或下载未确定的资源,体现典型的半自动的特征,在特定的场景,也非常地有用原创 2023-11-03 20:47:36 · 333 阅读 · 0 评论 -
支持宏的文本编辑器提高生产力
在文本编辑过程中,利用宏录制、宏重发,可以将某些固定操作进行固化,以利于提高生产力原创 2023-10-28 16:14:27 · 157 阅读 · 0 评论 -
cppcheck值得推荐的开发工具链工具
cppcheck建议作为开发工具链的一部分,适用于c/c++项目工程原创 2023-10-16 22:35:18 · 165 阅读 · 0 评论 -
如果调出si3代码编辑IDE的删除代码行操作
一直错误地觉得si3代码编辑器不提供删除代码行的操作,最近摸索出来,如何调出删除代码行操作的方法,以资共享原创 2023-10-14 20:10:53 · 109 阅读 · 0 评论 -
ftp免交互自动上传文件脚本
利用ftp命令的命令参数和脚本的Here文档技术,实现ftp上传文件免密、面交互原创 2023-08-26 15:49:44 · 577 阅读 · 0 评论 -
Linux结合Top和Grep工具挑选消耗CPU比较高的进程们
简单利用top和grep shell工具挑选出cpu占用最高的进程们原创 2023-04-15 17:52:54 · 646 阅读 · 1 评论 -
GDB使用经验总结
对于常用的GDB使用技巧进行总结原创 2023-04-03 19:20:32 · 435 阅读 · 0 评论 -
addr2line输出问号怎么办
addr2line在使用地址信息不正确的情况下,会输出文号,但实际上在经过一番特殊处理后,还是可以定位到异常代码的行号原创 2023-02-27 22:13:48 · 4757 阅读 · 0 评论 -
一个蹩脚的图形中文验证码自动识别实现
一个蹩脚的图形中文验证码实现方案,通过opencv的模板图片匹配,虽然成功率不高,但是,暂时可以使用原创 2022-10-06 12:55:14 · 1017 阅读 · 0 评论 -
Linux Shell用IP反查网卡名称
在Linux有的应用场合,我们需要用ip反查或查找ip所在的网卡名称。想着在Linux中应该有比较直接的Shell命令可以做到这点。但网络搜到的第一个例子竟然是用双层循环遍历的方法,至少在形式和逻辑上复杂了!恰好,最近了解到grep -o pattern,可以仅匹配内容输出,以及grep [-A n] [-B n] [-C n],可以将匹配行的上下、前后显示出来,而不仅仅是匹配行自身输出,由此想出,可以稍微直接、“飞线"地由IP找到网卡名字。它的Scriptip addr | grep -原创 2022-05-19 21:43:47 · 2551 阅读 · 0 评论 -
windows和linux对齐svn客户端版本共享使用svn工作目录
可能有不少人的开发软件方式,是在windows上做代码开发,而在linux做版本编译。那么,通过linux samba服务共享代码目录给windows,在windows开发代码后,直接在linux命令行工具中进行编译,是很不错的工作方式。但是,通过windows的tortoiseSVN客户端下载代码到samba目录是一个相对缓慢的过程,有时甚至会出现checkout失败。这其中的缘由,是windows svn客户端相当于做了一次二道贩子:文件从远端svn服务器获取下来,但文件却真实存储于另外一个linu原创 2022-04-30 17:38:50 · 1661 阅读 · 0 评论 -
最简rsync同步搭建步骤
# 需求+ 偶尔需要将备份的东西传输到异地备用机上,而且要求加密传输# 预备环境+ 准备一台Linux作为备用机服务器,建议为CentOS 7最新版本+ 安装rsync组件,不赘述+ 在备用服务器机上放非root用户,例如,codebackup ;且设置安全强度高的密码。后续利用免密SSH登录,此用户密码在后期实际较少使用,所以,可以设置长密码# 添加新用户useradd codebackup# 设置高安全强度密码passwd codebackup+ 在有备份需求的原创 2021-09-20 11:33:07 · 207 阅读 · 0 评论 -
利用VirtualBox虚拟机NAT网络模式实验PXE网络启动安装Linux/[CentOS,Ubuntu]
以前总想有一个方便的环境中,可以实验PXE网络启动安装Linux操作系统。曾经想过折腾下用一个交换机HUB去作一个专门的PXE网络安装环境,因为PXE需要DHCP服务,这样必须与其他网络有个好的隔离。近来才了解到,VirtualBox可以通过“NAT模式”的虚拟机环境,与宿主机形成一个可用的PXE网络,试验起来更方便。简单来说,新建VirtualBox虚拟机并配置“NAT模式”网络和网络启动优先项下,在宿主机用户主目录~/.config/VirtualBox/TFTP下放置pxelinux.0...原创 2021-02-10 11:39:52 · 996 阅读 · 0 评论 -
Linux Shell字符串变量头尾去除空格
本身想用简单的拿来主义,使用某搜索引擎推荐的博文,来去除Linux Shell中字符串变量头尾的空格。但是,发现推荐的方法,竟然很多文章是用echo "some string" | sed xxx去除头尾空格的方法,有点旁门左道了点。。。恰好最近根据https://github.com/wangdoc/bash-tutorial较为系统地学习了下bash shell的知识。在Linux Shell中字符串变量的操作,基本上算作一大类,有查找、截取、替换等,何必不用原生的字符串类的操作方法来实现目原创 2021-01-31 20:38:51 · 2655 阅读 · 0 评论 -
CentOS中最小安装、基础服务器安装等区别深入细观
CentOS中最小安装Minimal、基础网络服务器(Network Infrastructure Server)、server with gui等安装模式,其实如果您不深究的话,粗略可认为就是系统的安装包的数量不同和类别不同就行了。 至于这些安装模式到底有那些包的区别,那么就需要借助显微镜**yum grouplist**和**yum groupinfo**两个来进行查看。 + yum grouplist > 列出提供组合安装的组名+ yum groupinfo &g..原创 2020-06-14 20:36:57 · 5778 阅读 · 0 评论 -
VSFTPD虚拟用户限制IP访问解决方案与Linux系统账户的完美结合
在Windows上用Filezilla Server ftp程序,通过配置界面,可以很容易地实现FTP虚拟用户放号和限制虚拟用户访问IP,但是在Linux上部署vsftpd时却遇到了一些小麻烦,本来以为FTP在两个系统下,都有很好的对应解决方案的...... 我们知道在vsftpd中设置虚拟用户,网上大量的文章建议让用PAM机制中的pam_userdb模块;如果,继续想深入限制访问用户...原创 2019-12-04 21:10:00 · 1081 阅读 · 7 评论 -
以UbuntuServer为基部署堡垒机或跳板机(续1)
以ubuntuServer作为堡垒机,在音频处理这块,让自己折腾了很久的时间...... 作为跳板机使用的电脑实际上,对于限制区域,进行远程访问,实际不需要进行声音重定向redirect。让远程机器自己管理音频即可,类似利用windows mstsc远程桌面客户端时,可选择将语音留在远程机器上;但是,用man xfreerdp查阅的使用命令help,根据说明传参总是达不到要求,还...原创 2019-11-08 23:21:06 · 407 阅读 · 0 评论 -
CentOS用一行Shell脚本自动下载RPM所有依赖包
在CentOS在线环境上下载所有RPM包依赖,然后在离线环境上安装,网上的资料不少。但实践了下,觉得网上的资料雷同的比较多,也陈旧了点,或其建议方法不能解决所有场景问题。网上建议大概都是两种操作方法,使用一句命令就可以搞定,假设,以安装VirutalBo为例:#方法1yum install --downloadonly --downloaddir=. VirtualBox-5.2-5....原创 2019-10-26 23:59:04 · 605 阅读 · 0 评论 -
以UbuntuServer为基部署堡垒机或跳板机
以前研究过CentOS如果以服务器端部署的话,则有很多页面相关的组件是不会安装的。在实际堡垒机应用中,堡垒机或跳板机也是尽量需要少安装组件,以增加安全性和提高性能。而且近段时间关注过Windows/Linux间相互远程桌面访问的问题,他们之间是可以通过远程桌面相互访问。所以,如果可以服务器Linux部署堡垒机是不是可行呢?是不是有戏呢?通过研究Ubuntu ServerGUI的官方...原创 2019-10-24 21:15:19 · 845 阅读 · 0 评论 -
利用公式嵌套实现复杂的Excel中动态获取sheet页并获取某表格中某值
遇到一个看似复杂逻辑过程,将对于excel工资数据进行处理。现状: 每个月份产生一个sheet页的数据,Sheet名称命名格式格式固定YYYY.MM需要处理逻辑: 1、每年的1月份不累计以前月份的数据;其它月份累计上个月的历史数据 1.1 如果在历史数据中获取不到数据,则累计值需要返回零。 例如,在某公司的工资表中,如果新员工入职第...原创 2019-09-17 22:04:53 · 3226 阅读 · 0 评论 -
Ubuntu搭建Samba服务遇到的比较搞的事情
在Ubuntu中配置samba服务,在安装完软件包后,就需要在默认的/etc/samba/smb.conf文件中,增加一段新的配置,但是,很不幸是借用网上一段配置,可能编辑配置文件的时间,也没有太注意,在某些配置行尾部多了几个额外、不可见的空格,竟然导致samba服务一直不能够正常工作,不能够启动服务,启动过程中报错。在这种异常的情况下,只能用逐行盯着看配置关键信息,发现在字面上没有问题,那就...原创 2019-09-08 21:35:08 · 353 阅读 · 0 评论 -
Jenkins禁止工作区浏览和打包下载全部文件的超级链接一种方法
因为一些限制,需要寻找一种方法屏蔽掉Jenkins中JOB视图在workspace工作空间中自由浏览和“打包下载全部文件“的超级连接。查阅了一些jenkins自己的材料,好像没有这样的定制化服务。 不过,后来想,既然jenkins自身不支持配置,那么不直接攻取,可不可以进行间接的访问拦截呢?由于jenkins服务是运行在Linux机器上,而且,采集分析jenkins web浏览工作...原创 2019-07-25 21:52:32 · 2097 阅读 · 1 评论 -
Linux System Account系统用户的最佳实践
在Linux中有一类非常特殊的用户就是系统账户,这些系统账户System Account,通常只用来运行服务程序,避免以root用户超级权限来运行服务,以增强系统的安全性。有趣的是,这类用户,通过useradd -r -s /sbin/nologin 增加后,无法完成系统登陆,而且因为特意不去设置密码、密码过期等限制,所以,这类用户是无法自由切换的用户的,保证了安全可靠的隔离沙箱。但是,r...原创 2019-07-25 21:23:08 · 990 阅读 · 0 评论 -
maven创建离线本地仓库的坑之verifying availability
maven在管理依赖组件和描述工程全貌上是一把好手,但是,它强烈地依赖联网环境,特别是对于一些公共的组件。离线运行,maven本身就支持的不够友好,离线从来都不是maven的好朋友!笔者就在搭建maven本地仓库时遇到了一些麻烦。即使设定了maven配置文件中的settings.xml中localRepository和offline,maven在离线运行过程中依然强烈冲动地要联网,进行ver...原创 2019-07-13 18:08:23 · 3317 阅读 · 0 评论 -
奇异现象其实也很根本---谈centos部署jenkins运行脚本遭遇的Permission Deny问题
在centos7中,用rpm方式安装了jenkins持续集成&交付的环境,按照安装后的默认配置值,运行jenkins服务,jenkins进程所使用的用户,非root用户,是特殊的jenkins普通用户。在个人使用jenkins job中,执行某些脚本访问文件或目录时,就遭遇了Permission Deny问题。 出现此问题时,由于有些Linux使用上的经验,个人用which...原创 2019-07-04 22:49:34 · 1106 阅读 · 0 评论 -
Java世界中类加载时出现的隐性死锁
在今年遭遇过一次执行了某个操作后,代码中某一个执行流就是不能执行下去的故障现象......,像极了线程死锁!好在,知道Java提供了些工具可以观察JVM中所有线程的快照,例如在Linux使用kill -3 pid让JVM输出各线程的堆栈快照,可以去分析、分析是否有死锁?但,初步分析结果是令人惊讶的!Java程序输出的dump信息显示没有明显的死锁,但是在事后来看,事后诸葛亮一下,日志也...原创 2018-09-08 22:51:46 · 673 阅读 · 0 评论 -
Linux Shell Echo多变量输出时怪异叠写现象(某些字符串变量中含有\r或\n)
今天利用Linux Shell命令从文件中截取一部分文本行信息 `Cat file | grep someKeyword` 到Shell变量中,然后又用shell字符串变量截取的方法,提取文本行内更准确的字符信息;利用同样的操作方法,得到多个字符串变量信息,最后再用echo组合多变量输出所需要的格式信息,但最终控制台显示结果却发现了怪异现象,一些字符没有出现或者从首字符处出现了叠写、相互覆盖、覆写...原创 2018-09-07 22:38:17 · 8000 阅读 · 0 评论 -
Wireshark的一些使用经验
在Wireshark可以使用wireshark支持的lua语言进行定制或扩充。注:本文所测试脚本以Wireshar2.0.4为准#工作中经常会遇到需要将某些UDP报文固定解析为RTP协议,这个操作通过在init.lua中扩充分析器local rtp_dissector = Dissector.get("rtp")DissectorTable.get("udp.port")原创 2017-08-05 11:44:04 · 2095 阅读 · 0 评论 -
pywin32 copy excel sheet阻点经验
在工作中遇到一些重复的excel操作,例如,检查excel中的填报情况和生成下一次的填报新模板excel。 每周重复这样操作的时间,总想着有没有可以自动化的办法可以搞定,毕竟程序员厌恶重复嘛! 这段在帮助一位同事用python搭建一个web服务后,就非常饶有兴趣地决定用python胶水语言试试,以方便工作。 因为检查和拷贝excel的重复工作,是与windows环境绑原创 2017-08-05 10:55:04 · 2341 阅读 · 0 评论 -
SecureCRT工具的使用技巧和脚本的定时执行
SecureCRT是一个很方便的远程控制linux系统的命令行工具。在SecureCRT的使用技巧中,常用的就按钮栏和录制脚本。 在SecureCRT中您可以配置自己的按钮栏,在按钮栏上定制添加一些常用操作的按钮。这样通过一键鼠标点击就可以搞定常用输入或常用操作,例如tail查看某个文件或cd到某个目录,非常地便捷。 SecureCRT另外一个常用的功能就是录制脚本,可以将一些更长原创 2017-04-08 11:51:58 · 15269 阅读 · 7 评论