Linux计算天前日期: date -d "- day" +%Y%m%d AIX计算5天前日期: perl -e "use POSIX qw(strftime); print strftime '%Y%m%d' , localtime( time()-3600*24*5) "…
如何能让自己的shell显得不那么业余?下面6点实践一定有用. 画外音:本篇文章源自Google的一篇实践,抽取了部分1分钟能读完的内容,加入了一些分析. 一.以下面的语句开场 set -o nounset 在默认情况下,遇到不存在的变量,会忽略并继续执行,而这往往不符合预期,加入该选项,可以避免恶果扩大,终止脚本的执行. 画外音:有些变量名的手误,会让人崩溃的调试半天,通过这个方式,这类手误秒发现. set -o errexit 在默认情况下,遇到执行出错,会跳过并继续执行,而这往往不符合预期…
Shell 小技巧 ${} 的使用 截断变量 去掉左边 使用 # (最短匹配)或 ## (最长匹配)方法为 ${var#<模式>} var=DUMMY echo ${var#*M} # MY echo ${var##*M} # Y 去掉右边 使用 % (最短匹配)或 %% (最长匹配)方法为 ${var%<模式>} var=DUMMY echo ${var%M*} # DUM echo ${var%%M*} # DU 字符串提取 索引从0开始,使用 :<索引> 定位开始…
实用小技巧:Notepad++直接连接Linux 前言 号称编辑器之神的Vim对于只会用几个基础操作的本人而言,在编辑一些大型文本有那么些力不从心: 平时都是通过Xftp拖到本地,修改完后再覆盖回去: 无意间发现Notepad++可以通过插件直接远程连接Linux,觉得很实用,记录一下配置过程:-) 下载插件 下载地址,下载插件:https://sourceforge.net/projects/nppftp/ 下载解压后,将其中的NppFTP.dll文件放置到Notepad++安装路径下的plu…
方法1: ls -al |grep -E "^d" |grep -v "\.$" |wc -l 详解: -a 列出目录下的所有文件,包含以.开头的隐藏文件: "^d"查找以d开头的行: "\.$"查找任意普通字符结尾的行,"\."是字符.的转义,点.代表任意字符 方法2: find -maxdepth 1 -type d |grep -v "^.$" 如果统计到2级目录-maxdepth…
方法1: grep -E "^$" 1.txt | wc -l 详解:在网上摘抄,个人觉得不使用-E参数也行,利用正则^$可帅选出空行 方法2: file="1.txt" sed -n  '/^$/p' 1.txt |wc -l 详解:-n选项:只显示匹配处理的行(否则会输出所有) 方法3: awk '/^$/' 1.txt  |wc -l awk '/^$/{print $0}' 1.txt  |wc -l awk '$0~/^$/{print $0}' 1.tx…
工具推荐 命令行中很方便的代码统计工具---cloc 强大的分屏工具---tmux 最舒服的markdown书写工具---typora markdown图床推荐--七牛云 模拟生成熵(避免暴力手搓键盘) 计算机本身是可预测的系统(比如开始的过程),因此,计算机算法不可能产生真正的随机数.但是机器的环境中充满了各种各样的随机性的噪声,如硬件设备发生中断的时间,用户点击鼠标的时间间隔等,这些事件是完全随机的,事先无法预测.而Linux内核实现的随机数产生器正是利用系统中的这些随机噪声来产生高质量随机…
可以在sh内使用set -x,使用后,会打印每条命令的输出 在shell中设置 set -x 开启 set +x 关闭 也可以在执行脚本时加参数 sh -x *.sh…
当前目录下后缀为sh的文件,改为后缀shell. 这里列出两种方法,先看第一种.方法1:#!/bin/bash str=`find ./ -name \*.sh`  # 会产生一个列表 file=" $str "   # 需要在列表前后加空格,在shell中,列表或数组的括号前后必须是空格 for i in $file do mv $i ${i%sh}shell done思路很简单,用find找到符合的文件,存如数组.然后使用mv修改文件名. 其中${i%sh}shell是修改后缀后的…