linux 101 hacks 2date,grep,find
感觉挨个按着作者来的太蠢了,我还是放自己觉得不错的东西把
用特定格式显示当前时间
以下的方法可以用各种不同的格式来显示当前时间:
$ date
Thu Jan :: PST
$ date --date="now"
Thu Jan :: PST
$ date --date="today"
Thu Jan :: PST
$ date --date='1970-01-01 00:00:01 UTC +5 hours' +%s $ date '+Current Date: %m/%d/%y%nCurrent Time:%H:%M:%S'
Current Date: //
Current Time:::
$ date +"%d-%m-%Y"
--
$ date +"%d/%m/%Y"
//
$ date +"%A,%B %d %Y"
Thursday,January
以下是 date 命令的不同的格式选项, 各选项所代表含义如下:
%D 日期(月/日/年)
%d 一个月中的第几天 (01..31)
%m 月份 (01..12)
%y 年份的后两位 (00..99)
%a 当前语言下星期的缩写 (Sun..Sat)
%A 当前语言下星期的全拼 (Sunday..Saturday)
%b 当前语言下月份的缩写 (Jan..Dec)
%B 当前语言下的月份的全称 (January..December)
%H 24 小时制小时 (00..23)
%I 12 小时制小时 (01..12)
%Y 年份(1970…)
显示过去的日期和时间
如下方法可以用来显示过去的日期和时间:
$ date --date='3 seconds ago'
Thu Jan :: PST
$ date --date="1 day ago"
Wed Dec :: PST
$ date --date="1 days ago"
Wed Dec :: PST
$ date --date="1 month ago"
Mon Dec :: PST
$ date --date="1 year ago"
Tue Jan :: PST
$ date --date="yesterday"
Wed Dec :: PST
$ date --date="10 months 2 day ago"
Thu Feb :: PST
显示未来的日期和时间
如下的方法可以用来展示未来的日期和时间:
$ date
Thu Jan :: PST
$ date --date='3 seconds'
Thu Jan :: PST
$ date --date='4 hours'
Thu Jan :: PST
$ date --date='tomorrow'
Fri Jan :: PST
$ date --date="1 day"
Fri Jan :: PST
$ date --date="1 days"
Fri Jan :: PST
$ date --date="2 days"
Sat Jan :: PST
$ date --date='1 month'
Sun Feb :: PST
$ date --date='1 week'
Thu Jan :: PST
$ date --date="2 months"
Sun Mar :: PST
$ date --date="2 years"
Sat Jan :: PST
$ date --date="next day"
Fri Jan :: PST
$ date --date="-1 days ago"
Fri Jan :: PST
$ date --date="this Wednesday"
Wed Jan :: PST
grep
不细讲了
语法: grep [选项] pattern [文件名]
在下面这个例子中, grep 在“/etc/password/” 文件下查找所有含有“John” 的行并全部显 示出来
# grep John /etc/passwd
jsmith:x:::John Smith:/home/jsmith:/bin/bash
jdoe:x:::John Doe:/home/jdoe:/bin/bash
参数-v 会显示出所有不包含匹配文本的内容。下面的例子中,显示了所有在“ /etc/password” 下不含有“John” 的内容。
注: 在“/etc/password” 下有几行不包含“John” ,只有第一行显示了
# grep -v John /etc/passwd
jbourne:x:::Jason Bourne:/home/jbourne:/bin/bash
在下面这个例子中,显示了在“/etc/password/” 下含有“John” 的行的总数
# grep -c John /etc/passwd 用-cv 也可以得到不含有“John” 的行的总数
# grep -cv John /etc/passwd
利用“ -i” ,搜索的时候会忽略大小写
可以利用“ -r” 来完成在所有的子目录下执行相应的查找。 在下面的例子中,在“/home/users/” 的子目录下忽略大小写,查找“John” , 这会以“ 文件名:匹配的内容” 形式显示。也可以利用参数“ -l” ,只显示文件名。
# grep -ri john /home/users
/home/users/subdir1/letter.txt:John, Thanks for your contribution.
/home/users/name_list.txt:John Smith
/home/users/name_list.txt:John Doe
# grep -ril john /root
/home/users/subdir1/letter.txt
/home/users/name_list.txt
find 命令
这里介绍的感觉不是太详细,参考这两篇更详细的:
Linux find 用法示例
语法: find 路径 约束条件
如何查找在文件名中含有指定关键字的文件?
下面这条命令查找在“/etc” 目录下所有文件名中含有“mail” 的文件。
# find /etc -name "*mail*"
如何查找文件大小超过指定值的文件?
下面这个命令会列出系统中所有大于 100M 的文件
# find / -type f -size +100M
如何查找在最近几天没有被修改过的文件?
下面这条命令会列出在当前目录下在最近 60 天没有被修改过文件
# find . -mtime +
如何查找在最近几天被修改的文件?
下面这条命令会列出在当前目录下在最近 2 天被修改过文件
# find . –mtime -
如何删除扩展名为.tar.gz 并且大于 100M 的压缩文件?
当你不想意外删除文件时,那么当执行下列命令要小心点。最好的方法是利用“ls -l” 去执行
下列相同命令以确保当执行 rm 命令时,你知道什么文件会被删除。
# find / -type f -name *.tar.gz -size +100M -exec ls -l {} \;
# find / -type f -name *.tar.gz -size +100M -exec rm -f {} \;
这个可以alias
alias rm='mv --verbose -f --backup=numbered --target-directory /mnt/lustre/asrdata/users/xch27/.Trash'
这样,如果真的要删除的话,\rm执行,不然的话,会mv到一个文件夹下面,但是不能加-rf等参数了,因为mv不支持,哈哈
如何对最近几天没有被修改的文件进行存档?
下面的命令查找到在“/home/jsmith” 目录下最近 60 天没有被修改的文件并且在“/tmp” 下创
建一个格式为“ddmmyyyy_archive.tar” 的归档文件 感觉不常用,还是会*用的多些
# find /home/jsmith -type f -mtime + | xargs tar -cvf /tmp/`date '+%d%m%Y'_archive.tar`
提醒一下:你可以使用“midnight commander” 上进行有关文件的一些操作, 它是 UNIX 字符界
面下一款非常强大的文件管理器。
linux 101 hacks 2date,grep,find的更多相关文章
- linux 101 hacks 第一章cd命令
本系列来源于<linux 101 hacks>,作者还写了其他101 hacks教程,读了几章,觉得技巧都还不错,很实用,做个总结收藏. cdpath 设置基目录 [ramesh@dev- ...
- centos 正则,grep,egrep,流式编辑器 sed,awk -F 多个分隔符 通配符 特殊符号. * + ? 总结 问加星 cat -n nl 输出文件内容并加上行号 alias放~/.bash_profile 2015-4-10 第十三节课
centos 正则,grep,egrep,流式编辑器 sed,awk -F 多个分隔符 通配符 特殊符号. * + ? 总结 问加星 cat -n nl 输出文件内容并加上行号 alias放~ ...
- Shell常用工具find,grep,sed,awk,xargs命令
最近学习shell命令,对grep,sed,awk命令有点混乱,故小结一下,巩固一遍. 注意:find , grep , sed, awk可使用基本正则表达式字符,find,grep,awk也支持扩展 ...
- Linux基础之-正则表达式(grep,sed,awk)
一. 正则表达式 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式是对字符串操作的一种逻辑公 ...
- linux 101 hacks 6history 及相关关键字
如果你经常使用命令行,那么有效的使用命令历史机制将会使效率获得极大提升.事实上,一旦你掌握了我在下面给出的 15 个例子, 你就会发现使用命令行将更有乐趣 是吗?我学一学呢 技巧 50:使用 HIST ...
- ubuntu,day 2 ,退出当前用户,创建用户,查找,su,sudo,管道符,grep,alias,mount,tar解压
本节内容: 1,文件权限的控制,chmod,chown 2,用户的增删和所属组,useradd,userdel 3,用户组的增删,groupadd,groupdel 4,su,sudo的介绍 5,别名 ...
- sed,grep,进阶+source+export+环境变量
三剑客之sed 概括流程:从文件或管道中,可迭代读取. 命令格式: sed(软件) 选项 sed命令 输入文件 增 两个sed命令: a: 追加文本到指定行后 i: 插入到指定行前 sed -i '1 ...
- linux 101 hacks 7crontab
技巧 74: crontab 书上的这一段我删了,重写一下,用的是ubuntu 16.04系统 参考 每天一个 linux 命令(50):crontab 命令 crond 服务 安装 crontab: ...
- jquery源码解析:each,makeArray,merge,grep,map详解
jQuery的工具方法,其实就是静态方法,源码里面就是通过extend方法,把这些工具方法添加给jQuery构造函数的. jQuery.extend({ ...... each: function( ...
随机推荐
- 什么是ground truth(GT)
转自ground truth的含义 ground truth在不同的地方有不同的含义,下面是参考维基百科的解释,ground truth in wikipedia. 1.在统计学和机器学习中 在机器学 ...
- 转:AutoLayout中的Content Hugging 和 Content Compression Resistance
OS6中引入了AutoLayout,极大的方便了UI元素的布局,现在已经过去一年了,并且大部分设备的系统也已经升级到了iOS6,是时候要使用此项技术了. 在AutoLayout的学习中有两个概念官方文 ...
- python字符中加入变量
有时候,我们需要在字符串中加入相应的变量,以下提供了几种字符串加入变量的方法: 1.+ 连字符 name = 'zhangsan' print('my name is '+name) #结果为 my ...
- bzoj千题计划163:bzoj1060: [ZJOI2007]时态同步
http://www.lydsy.com/JudgeOnline/problem.php?id=1060 以激发器所在节点为根 终止节点一定是叶节点 记录点的子树内最深的终止节点 然后从根往下使用道具 ...
- HDU 1525 类Bash博弈
给两数a,b,大的数b = b - a*k,a*k为不大于b的数,重复过程,直到一个数为0时,此时当前操作人胜. 可以发现如果每次b=b%a,那么GCD的步数决定了先手后手谁胜,而每次GCD的一步过程 ...
- Linux系统中连接使用NAS
在使用NAS时,需要先确定NAS上的NFS服务和SMB的服务都开启了: 然后需要用NAS上的用户去登录,这里用的是admin: # smbclient -L 192.168.1.40 -U admin ...
- SpringBoot 线程池配置 实现AsyncConfigurer接口方法
目的是: 通过实现AsyncConfigurer自定义线程池,包含异常处理 实现AsyncConfigurer接口对异常线程池更加细粒度的控制 *a) 创建线程自己的线程池 b) 对void ...
- 博主退役了qwq
noip靠太差的(蒟蒻)博主退役了qwq 感觉以后都没什么机会可以继续写博客了 这个博客八成是坟了呀qwq 其实感觉也没有什么人关注qwq 所以也不长篇大论些什么了 就这样吧qwq
- python概念-Socket到底有多骚
Socket究竟是什么呢? 简单来说Socket就是用来完成客户端与服务器之间的通信 例如浏览器访问网页,例如网络游戏等一切基于客户端服务器来实现的C/S架构程序 Socket是基于互联网OSI七层协 ...
- Velocity VelocityEngine 支持多种loader 乱码问题
最近升级团队的代码生成工具,此工具是velocity实现的. 之前习惯使用UTF-8编码,现在团队使用GBK. 所以遇到一种场景,模板文件使用UTF-8(习惯了所有任性),输出文件使用GBK(项目需要 ...