linux和它的小伙伴
darksun9972
这个作者很懒,什么都没留下…
展开
-
AIX中的timeout脚本
原文地址:https://www.lujun9972.win/blog/2021/07/27/aix中的timeout脚本/index.html目录UPDATE:AIX 下没有现成的 timeout 命令来限时运行命令,于是就想着自己实现一个类似的脚本。本来以为挺简单的一件事情,结果埋者一堆坑。最初的结果如下:#! /usr/bin/kshwaitfor=$1shiftcommand=$*$command &commandpid原创 2021-08-07 18:40:47 · 611 阅读 · 0 评论 -
从命令行追踪新冠肺炎全球疫情数据
原文地址:https://www.lujun9972.win/blog/2021/08/07/从命令行追踪新冠肺炎全球疫情数据/index.html今天发现一个好牛逼的网站,可以让我们通过命令行查看新冠肺炎全球疫情数据查看指定国家的今日疫情数据通过访问 `https://corona-stats.online/国家名称` 可以获得指定国家的今日疫情数据,例如下面命令查看中国的当前疫情数据:curl https://corona-stats.online/china原创 2021-08-07 18:39:43 · 280 阅读 · 0 评论 -
AIX中的timeout脚本
原文地址:https://www.lujun9972.win/blog/2021/07/27/aix中的timeout脚本/index.htmlAIX 下没有现成的 timeout 命令来限时运行命令,于是就想着自己实现一个类似的脚本。本来以为挺简单的一件事情,结果埋者一堆坑。最初的结果如下:#! /usr/bin/kshwaitfor=$1shiftcommand=$*$command &commandpid=$!(sleep $waitfor;kill $comma原创 2021-08-01 10:32:37 · 227 阅读 · 0 评论 -
AIX中的timeout脚本
原文地址:https://www.lujun9972.win/blog/2021/07/27/aix中的timeout脚本/index.htmlAIX 下没有现成的 timeout 命令来限时运行命令,于是就想着自己实现一个类似的脚本。本来以为挺简单的一件事情,结果埋者一堆坑。最后的结果如下:#! /usr/bin/kshwaitfor=$1shiftcommand=$*$command &commandpid=$!(sleep $waitfor;kill $comma原创 2021-07-27 13:02:47 · 366 阅读 · 0 评论 -
脚本获取TLS/SSL证书失效日期
原文地址:https://www.lujun9972.win/blog/2021/07/21/脚本获取tls-ssl证书失效日期/index.html从 https://www.cyberciti.biz/faq/find-check-tls-ssl-certificate-expiry-date-from-linux-unix/ 上看到的使用小脚本,记录一下在 Web 服务器上可以通过 TLS/SSL 来对服务器和浏览器之间的连接进行加密,TLS/SSL 使用 X509 证书来进行加密,当证书原创 2021-07-27 13:01:43 · 768 阅读 · 0 评论 -
使用curl进行网站测速
原文地址:https://www.lujun9972.win/blog/2021/06/08/使用curl进行网站测速/index.html网站访问可以分为下面几个阶段:DNS 域名解析通过SSL协议交换密钥(HTTPS)与服务端创建 TCP 访问连接客户端发起请求服务端收到请求并准备回应内容服务端回复回应内容当我们优化网站速度时通常要现确定哪个阶段是耗时大头。而令我感到惊奇的是,原来 curl 的 -w 选项可以让 curl 完成访问网站的操作后将各阶段的耗时情况(以及其他一原创 2021-06-08 16:59:29 · 1951 阅读 · 0 评论 -
bash中的‘‘与$‘‘
原文地址:https://www.lujun9972.win/blog/2021/05/17/bash中的''与$''/index.html之前我一直以为bash中的单引号字符串中是可以通过反斜线(\)来转义单引号的,但是通过查阅 bash manual 发现这是我的错觉。bash中的单引号字符串('xxxx')会 完全 保留字符的字面意义,单引号是无法包含在其中,反斜杠在单引号字符串中表示的就是反斜杠,而不是转义符号。如果想要引用单引号(')需要使用 $'xxxx' 这种格式,它会尽可原创 2021-05-17 22:49:48 · 247 阅读 · 0 评论 -
为ping命令增加时间信息的正确方法
原文地址:https://www.lujun9972.win/blog/2021/04/26/为ping命令增加时间信息的正确方法/index.html不知道为什么,在网上搜索为 ping 命令增加时间信息方法时,给出来得解决方案都是将 ping 命令的结果传递给一个循环,然后在循环内生成时间。这个循环可能是一个流式处理命令,比如 awk:ping www.baidu.com -c 5 | awk '{ print strftime("%Y-%m-%d %H:%M:%S",systime(原创 2021-04-26 11:44:26 · 6784 阅读 · 0 评论 -
在Linux下创建内存磁盘的不同方法及区别
原文地址:https://www.lujun9972.win/blog/2021/04/16/在linux下创建内存磁盘的不同方法及区别/index.html内存磁盘具有读写速度快和断电即删的特性,非常适用于临时性的测试新鲜应用。在Linux中提供了 tmpfs 和 ramfs 两种内存文件系统用于创建内存磁盘,用它们创建内存磁盘的方法几乎一样:# 使用 tmpfs 创建内存磁盘mo原创 2021-04-16 15:21:39 · 2018 阅读 · 0 评论 -
使用awk查找并修复数据中一对多的不一致问题
原文地址:https://www.lujun9972.win/blog/2021/04/15/使用awk查找并修复数据中一对多的不一致问题/index.html从 https://www.datafix.com.au/BASHing/2021-03-17.html 上看到的一个 awk 小技巧。所谓“一对多”的不一致问题是指这么一种情况:属性1与属性2本来应该是 1:1 或者 N:1 的关系,但是由于数据错误导致同一个属性1有了多个属性2与之对应。例如下面数据中, 每个 item 本来应原创 2021-04-15 19:26:23 · 148 阅读 · 0 评论 -
升级库文件后如何查找需要重启的服务
原文地址:https://www.lujun9972.win/blog/2021/04/14/升级库文件后如何查找需要重启的服务/index.html从 https://www.cyberciti.biz/faq/how-to-restart-systemd-without-rebooting-linux-when-critical-libraries-installed/ 上看到的一个小技巧。当升级库文件后,那些使用该库的服务需要重启后才会真正使用该库文件中的内容。一个常用的方法是直接重启系统原创 2021-04-14 17:34:03 · 369 阅读 · 0 评论 -
使用Pi-hole屏蔽广告
原文地址:https://www.lujun9972.win/blog/2020/12/05/使用pi-hole屏蔽广告/index.html目录获取Pi的对外IP地址安装Pi-hole配置DNS配置拦截域名获取Pi的对外IP地址我们一般通过ssh登陆树莓派来进行管理,因此可以从 SSH_CONNECTION 环境变量中获取树莓派的对外IPIP=$(echo ${SSH_CONNECTION}|cut -d ' ' -f 3)echo $原创 2020-12-05 21:51:17 · 1918 阅读 · 1 评论 -
sc:命令行里的电子表格
原文地址:https://www.lujun9972.win/blog/2020/08/25/sc-命令行里的电子表格/index.html目录安装界面说明常见操作输入数据移动光标添加/删除单元格修改单元格内容设置单元格格式隐藏行列拷贝/删除单元格内容公式保存/加载工作簿Linux下的电子表格软件非常多,比如国产的WPS演示、LibreOffice Calc、Gnumeric、KSpread、Xspread。但是这写软件都是运行在原创 2020-08-28 21:38:45 · 389 阅读 · 0 评论 -
在命令行进行简单的统计分析
原文地址:https://www.lujun9972.win/blog/2020/08/23/在命令行进行简单的统计分析/index.html目录使用awk获取最小值、最大值、中位数和平均值使用datamash进行统计分析常见的选项说明常见的统计操作例子使用awk获取最小值、最大值、中位数和平均值使用awk先把数据存入一个数组中,然后对数组进行排序后就可以自己写代码找出最小值、最大值、中位数和平均值了:#! /usr/bin/aw原创 2020-08-23 21:42:55 · 567 阅读 · 0 评论 -
如何设置git push和git pull的超时时间?
原文地址:https://www.lujun9972.win/blog/2020/06/03/如何设置git-push和git-pull的超时时间?/index.html不知道为什么,最近从 github 上git push 和 git pull 的时候总是不太稳定,有时候 pull 了半天都拉不下来,然后中断后重试一次又很顺畅了。所以我想主动设置git push 和 git pull 的超时时间,这样我可以在脚本中监测退出状态后自动进行重试,而不是死等。目前来看,似乎 git 并没有一原创 2020-06-03 20:58:43 · 5784 阅读 · 0 评论 -
使用strace解决pacman提示无法锁定数据库的问题
原文地址:https://www.lujun9972.win/blog/2020/05/25/使用strace解决pacman提示无法锁定数据库的问题/index.html某次滚动升级archlinux的时候忘了插电,导致滚动到一半的时候断电了。导致插电后再升级时提示::: 正在同步软件包数据库...错误:无法升级 core (无法锁定数据库)错误:无法升级 extra (无法锁定数据库)错误:无法升级 community (无法锁定数据库)错误:无法升级 multilib (无法锁定数据原创 2020-05-25 22:23:26 · 3134 阅读 · 0 评论 -
如何批量删除Linux mail中的Cron邮件
原文地址:https://www.lujun9972.win/blog/2020/05/25/如何批量删除linux-mail中的cron邮件/index.html我在 cron 中设置了每天定时运行 Linux中国 的选题脚本。然后由于cron会将任务的执行结果通过邮件通知用户,这样一来过了一段时间后我的 mail box 中就充满了 CRON 发来邮箱了。看了网上的一些资料,我知道可以通过 echo 'd *'|mail 来删除所有 mail box 中的邮件,但是这样会把非 CRON 的邮原创 2020-05-25 15:42:15 · 863 阅读 · 0 评论 -
AWK tips 之移动文件中的指定行
原文地址:https://www.lujun9972.win/blog/2020/05/15/awk-tips-之移动文件中的指定行/index.html从 https://www.datafix.com.au/BASHing/2020-05-13.html 上看到的 AWK 技巧,记录一下。假设有这个一个文件:SaleID|Class|Item|Count|UnitP|TotalP146|fish|BG fillets|3|15.00|45.002785|fruit|banana|1原创 2020-05-15 19:00:02 · 252 阅读 · 0 评论 -
找回已连接Wifi的密码
原文地址:https://www.lujun9972.win/blog/2020/05/14/找回已连接wifi的密码/index.html目录NetworkManagernetctl根据Wifi管理组件的不同,存储Wifi密码的配置文件路径也不同。NetworkManager在 Ubuntu 中默认是使用 NetworkManger 来进行管理Wifi。其配置文件存储在 /etc/NetworkManager/system-connecti原创 2020-05-14 21:37:20 · 241 阅读 · 0 评论 -
如何从apt upgrade中排除指定包
原文地址:https://www.lujun9972.win/blog/2020/05/13/如何从apt-upgrade中排除指定包/index.html在 archlinux 下可以直接通过 pacman -Syu --ingore 来跳过指定包进行升级, 然而ubuntu 下的 apt 居然不提供类似的排除选项,这很让我感到吃惊.不过网上apt的内容倒是蛮多,经过简单的搜索,很容易找到解决方法。先用 apt-mark hold 来保留要排除的软件包sudo apt-mark ho原创 2020-05-13 22:27:47 · 1366 阅读 · 0 评论 -
git branch大扫除
原文地址:https://www.lujun9972.win/blog/2020/05/12/git-branch大扫除/index.html从 http://www.joachim-breitner.de/blog/751-Spring_cleaning__local_git_branches 上看到的小技巧,觉得很棒,记录一下。在git项目中经常会包含大量的分支,比如在在我 Linux中国 的选题仓库中就包含了一对各式各样的分支:git branch add-MjAxODA原创 2020-05-12 22:55:09 · 288 阅读 · 0 评论 -
体验COBOL语言
原文地址:https://www.lujun9972.win/blog/2020/05/01/体验cobol语言/index.html最近由于新冠肺炎导致COBOL程序员短缺的报道时有发生,于是对这门超级古老的语言感到好奇。经过一番搜索,居然发现archlinux上就有一个COBOL语言的编译器叫 gnucobol.在它的官网上 有许多资料,包括COBOL编程指南 和 gnucobo...原创 2020-05-01 17:33:39 · 449 阅读 · 0 评论 -
git hook+expand+unexpand化解空格与TAB之争
原文地址:https://www.lujun9972.win/blog/2020/04/29/git-hook+expand+unexpand化解空格与tab之争/index.html目录使用expand将TAB转换为SPACE使用unexpand将SPACE转换为TAB使用git hook实现代码的自动转换SPACE与TAB之争由来已久,但是有...原创 2020-05-01 12:25:53 · 362 阅读 · 0 评论 -
PlantUML Tips之设置连接线风格
原文地址:https://www.lujun9972.win/blog/2020/04/22/plantuml-tips之设置连接线风格/index.html花图时,PlantUML默认使用曲线连接元素,不过我们可以通过 skinparam 的 linetype 参数对连接线的风格进行修改。例如下面是默认的连接风格:@startUML EBook Use Case Diagra...原创 2020-04-30 19:16:37 · 4475 阅读 · 0 评论 -
如何去除ANSI Escape Sequences
原文地址:https://www.lujun9972.win/blog/2020/04/30/如何去除ansi-escape-sequences/index.html目录ANSI Escape Code的结构用sed过滤掉ANSI Escape Code通过 ANSI Escape Code 可以让终端上的输出更加华丽醒目,但是另一方面又让在脚本中...原创 2020-04-30 13:20:53 · 824 阅读 · 0 评论 -
如何使用隐写术保护你的机密文件
原文地址:https://lujun9972.github.io/blog/2020/04/26/如何使用隐写术保护你的机密文件/index.html目录解决方案一:使用Steghide命令安装解决方案解决方案二:使用outguess命令安装解决方案为了防止泄密,我们一般会对机密文件进行加密。然而加密的文件本身就容易引起人们的好...原创 2020-04-26 21:12:02 · 611 阅读 · 0 评论 -
如何找出程序读取的配置文件
原文地址:https://lujun9972.github.io/blog/2020/04/24/如何找出程序读取的配置文件/index.html目录解决方案一:查看manual手册安装解决方案解决方案二:使用strace命令安装解决方案解决方案一:查看manual手册涉及到的命令: man本部分以archli...原创 2020-04-25 12:16:53 · 1301 阅读 · 0 评论 -
DB2查询某条件占比的SQL
原文地址:https://lujun9972.github.io/blog/2020/04/20/db2查询某条件占比的sql/index.html今天为晨检脚本增加了记录记账成功率的功能,SQL的写法大致为:select sum(case when 记账状态='记账成功' t...原创 2020-04-22 19:51:42 · 679 阅读 · 0 评论 -
DB2随机抽样的SQL
其实就是或用rand函数.比如从数据库中随机抽取100条记录,那么可以这样做select * from $table order by rand() fetch first $limit rows only不够如果数据量大,这个运算量可以想象那是相当感人了。再比如从数据库中随机抽取1%的记录,那么可以这样做select * from $table where int(rand()*10...原创 2020-04-20 18:00:58 · 1268 阅读 · 0 评论 -
Vim Tips之编辑远程文件
原文地址:https://lujun9972.github.io/blog/2020/04/12/vim-tips之编辑远程文件/index.html自Vim7.x之后,就自带了netrw插件,该插件类似Emacs的Tramp一样,可以让Vim读写远程文件。当文件名为 protocol://[user]@hostname[:port]/path/to/remote/file 时Vim会...原创 2020-04-12 14:41:47 · 337 阅读 · 0 评论 -
从命令行获取网站的截图
原文地址:https://lujun9972.github.io/blog/2020/04/11/从命令行获取网站的截图/index.html目录FirefoxChrome今天从 https://www.putorius.net/website-screenshot-linux-command-line.html 学到了一招。Chrome和...原创 2020-04-12 08:49:47 · 678 阅读 · 0 评论 -
为Linux安装虚拟PDF打印机
原文地址:https://lujun9972.github.io/blog/2020/04/11/为linux安装虚拟pdf打印机/index.html今天发现一个 CUPS-PDF 项目,可以为 CUPS(Common Unix Printing System) 添加 PDF 打印机.步骤非常简单:安装 CPUS-PDFsudo apt install -y cups...原创 2020-04-12 07:02:07 · 4930 阅读 · 0 评论 -
如何创建自解压的归档文件
原文地址:https://lujun9972.github.io/blog/2020/04/11/如何创建自解压的归档文件/index.html目录解决方案一:使用shar命令安装解决方案解决方案二:gzip+tar+bash安装解决方案相关命令当要发送多个文件给他人时,我们经常会将多个文件打成一个归档文件。但是如果对方对L...原创 2020-04-12 06:47:28 · 238 阅读 · 0 评论 -
HTTP简介
1Web的结构组件1.1代理代理位于客户端和服务端之间,接受所有客户端的HTTP请求,并将这些请求转发给服务器(可能会对请求进行修改)1.2缓存将经过代理传送的常用文档保存起来,供下次请求时传送1.3网关网管请求时就好像自己是资源的源端服务器一样,客户端可能并不知道自己正在跟一个网管进行通信. 通常用于将HTTP转换成其他协议.1.4隧道用于通过HTTP协议传送其他协议的数据包1.5Agent代理原创 2015-05-26 07:34:22 · 471 阅读 · 0 评论 -
bash中通配符与{}模式的区别
通配符匹配只对已经存在的文件名作扩展.而{}模式,则可以对任意文本进行扩展,{}的用法为{扩展1,扩展2,扩展3…}. 例如cp filename{,.bak} # 相当于cp filename filename.bakvi /tmp/file{a,b,c,d,e} # 相当于vi /tmp/filea /tmp/fileb /tmp/filec原创 2015-05-26 07:36:01 · 375 阅读 · 0 评论 -
ksh和bash中的变量编辑
1.10 ksh和bash中的变量编辑操作符解释${variable#pattern}删除匹配variable值头部的pattern的最短部分${variable##pattern}删除匹配variable值头部的pattern的最长部分${variable%pattern}删除匹配variable值尾部的pattern的最短部分${variable%%pattern}删除匹配variable值尾原创 2015-05-26 07:36:04 · 484 阅读 · 0 评论 -
windows下的grep
转载至http://blog.163.com/lgh_2002/blog/static/440175262011429919777/grep for windows (支持命令行)windows下面也有各种移植的grep,不过要么不好用(不能遍历子目录),就是要收费。最后我找到了这个:GREP for Windows特点,命令行使用,体积很小,只要下载解压,然后把路径加入环境变量path中就在那里转载 2015-05-26 07:32:52 · 1050 阅读 · 0 评论 -
51cto公开课《老段带你学SED》第一期听课笔记
1 语法 sed [选项] '范围(条件) 命令' 文件2 选项-n 不显示源文件内容-i 直接替换源文件内容3 范围数字N表示第N行$表示最后一行正则表达式/reg/ 表示符合正则的行起始行,结束行表示两个行直接的范围,包括起始行和结束行4 命令 命令之间可以用;分隔,表示对匹配行进行多个命令操作.d 删除匹配行p 显示匹配行一般与sed -n一起使用s 替换 s/old/new/标签原创 2015-05-26 07:33:55 · 436 阅读 · 0 评论 -
如何仅将标准错误发送給管道
默认情况下,只有命令的表示输出才回发送到管道中,若要仅将标准错误发送給管道可以使用subshell. 如下所示(command1 >/dev/null) 2>&1 |command2或者使用如下方法交换stderr和stdoutcommand1 3>&2 2>&1 1>&3 |command2原创 2015-05-26 07:36:09 · 482 阅读 · 0 评论 -
Ubuntu12.04安装磊科NW336无线网卡
安装了ubuntu12.04后,发现NW336无线网卡不能正常工作,现象是能找到无线网络,但是一直提示输入接入密码而并不能实现接入。安装自带光盘里的NW336驱动程序发现不能正常安装了,因为ubuntu12.04的内核已经升级成了3.2,而自带光盘的驱动程序还只是2.6的。首先去磊科的网站上去下载驱动程序,结果发现只提供windows的驱动。没办法只好去http://www.realtek.c原创 2015-05-26 07:26:43 · 1058 阅读 · 0 评论