linux
千淘万漉
凡事思一个所以然,自有义理贯通之日
展开
-
Linux下的tar压缩解压缩命令详解
Linux下的tar压缩解压缩命令详解转载 2017-04-13 16:21:16 · 301 阅读 · 0 评论 -
sort求交集并集差集
uniq -u 取出只出现过一次的元素,用来求差集uniq -c group byuniq -d 取出出现次数大于等于2的元素,用来求交集sort 1 2 和cat 1 2 本质是一样的,只不过sort排序了所以求交集并集差集的关键不是在sort, 而是在uniq后面的选项如果单纯只有uniq, 就是单纯的去重,其实就是取并集所以sort a b|un...原创 2019-03-28 00:46:46 · 1321 阅读 · 0 评论 -
shell中的date
在处理数据时经常需要根据时间段批量回溯数据,因此在shell中使用date命令以及各种格式之间的转化就很有用,尤其是20181010和2018-10-10这两种格式,几个主要的需求如下:1.生成today的两种格式的时间戳date -d today +"%Y%m%d"date "+%Y%m%d" date -d today +"%Y-%m-%d"date "+%Y%-m-%d" ...原创 2018-11-30 18:58:09 · 4866 阅读 · 1 评论 -
awk中RS,ORS,FS,OFS区别与联系
学习awk时,一定要记得动手去实践,只有在实践中才能发现问题,以下就我在学习中和实践中的经验,总结一下RS,ORS,FS,OFS的区别和联系。一,RS与ORS1,RS是记录分隔符,默认的分隔符是\n,具体用法看下[root@krlcgcms01 mytest]# cat test1 //测试文件 111 222 333 444 555 666 2,RS...转载 2018-12-04 17:00:23 · 6604 阅读 · 0 评论 -
自定义cp命令:当目标文件夹不存在时先创建
# 文件复制:如果目标文件夹不存在,先创建# 第一个参数是源文件路径,包括文件名;第二个参数是目标文件路径,包括新文件名使用方式 ./cp1 /user/liushilei/old/file.txt /user/liushilei/new/new_file.txt#!/bin/sh source=$1des=$2# 计算/分隔之后总共有多少列fields=`echo ${d...原创 2018-11-29 22:10:01 · 21215 阅读 · 0 评论 -
du df查看文件夹和磁盘大小
du df查看文件夹和磁盘大小# 查看当前目录下所有文件夹和文件大小du -sh *du -h --max-depth=1注意du -h * 会把字文件夹中所有文件都打印出来,可视性很差,-s功能很类似于--max-depth=1# 查看指定文件夹大小du -h --max-depth=1 taskdu -sh task| grep G # 这个-sh选项真是太好用了,以前一直没注...原创 2018-11-13 22:04:52 · 3699 阅读 · 0 评论 -
Linux shell join命令详解
Linux join命令2012-02-09 17:49:00| 分类: SHELL | 标签:linux join 文件连接 |字号 订阅join命令功能:“将两个文件里指定栏位同样的行连接起来”,即依照两个文件里共有的某一列,将相应的行拼接成一行。join [options] file1 file2注:这两个文件必须在已经在此列上是依照同样的规则进行了排序。join选项-a F...转载 2018-10-10 12:04:32 · 529 阅读 · 0 评论 -
linux生成连续时间戳
第一种:代码如下:#!/bin/shecho "打印今天之前连续的十个时间戳"TODAY_DATE=`date`date_range=$(seq 10) # 数组#echo ${date_range[@]}for i in ${date_range[@]}do INSTANCE_DATE=`date -d "${TODAY_DATE} $i day ago原创 2017-07-27 17:20:04 · 1449 阅读 · 0 评论 -
linux统计当前目录下有多少文件
-- 统计当前目录下有多少个文件和文件夹ls | wc -l不要用 ll | wc -l或者 find | wc -l因为都会比真实文件数多一个,亲测列出当前目录下的所有文件 (以-开头的都是文件)ll | grep ^-同样列出当前目录下的所有子目录ll | grep ^d只统原创 2017-07-27 14:49:04 · 4767 阅读 · 0 评论 -
shell根据进程名杀死相关任务
#!/bin/sh#根据进程名杀死进程if [ $# -lt 1 ]then echo "缺少参数:procedure_name" exit 1fi PROCESS=`ps -ef|grep $1|grep -v grep|grep -v PPID|awk '{ print $2}'`for i in $PROCESSdo echo "Kill the $1 proce原创 2017-08-04 16:53:29 · 775 阅读 · 0 评论 -
shell中创建数组和遍历
linux 中定义一个数据的语法为:variable=(arg1 arg2 arg3 ....)中间用空格分开。数组的下标从0开始。1 获取下标为n的元素:variable[n]而且不存在数组下标溢出的情况,如果 n>= 数组的长度,那么为空,不会报错。2 获取数组长度${#variable[@]}或者${#variabl原创 2017-07-26 20:18:21 · 6602 阅读 · 0 评论 -
vim退出快捷键
退出vim的快捷键,不需要进入命令编辑模式按住shiftzz 保存退出zq 不保存退出,q表示放弃之所以按住shift,其实是切换大小写 在命令编辑模式下::q 不保存退出:q! 不保存强制退出:wq 保存退出,w表示写入,不论是否修改,都会更改时间戳:x 保存退出,如果内容未改,不会更改时间戳原创 2017-07-26 20:06:10 · 52314 阅读 · 3 评论 -
linux中sed的用法
关于sed的用法,主要把握以下两点以行为单位进行处理主要用于文本替换如果主要考虑查找,建议用grep,如果按列级处理,那要用awk,对于替换和删除首先考虑sed,虽然在vim可以完成以下大部分功能,但是vim操作文本有个致命的缺陷:不能在shell中用vim命令操作文本用于替换的两种情况:1.指定行号进行替换,整行替换原创 2017-07-25 15:45:25 · 424 阅读 · 0 评论 -
linux求两个文件的交集,并集,差集
对单个文件去重,对两个文件取交集,取并集,取差集都用cat命令 对file去重cat data1.txt | sort | uniq uniq只能对相邻的重复行去重,所以要先排序 删除两个文件的交集,将file1和file2中其余的行保存在file3file1中非交集的行,file2中非交集的行,都会保存在file3如果file2原创 2017-07-25 15:05:37 · 2980 阅读 · 0 评论 -
linux在当前目录下根据文件名查找文件
find | grep luoluo将当前目录下(包括子目录)的文件名中含有luoluo的文件过滤出来即使是当前目录子目录下的文件,也能被找出来。find | xargs grep luoluo将当前目录下(包括子目录)的文件内容中含有luoluo的行过滤出来ll | grep luoluo类似find | grep luol原创 2017-08-01 13:32:32 · 33890 阅读 · 0 评论 -
将Linux文件清空的几种方法
1.使用重定向清空文件 > test.txt 2.使用true命令重定向清空文件true > test.txt 3.使用echo命令清空文件echo -n "" > test.txt 4.使用truncate命令清空文件truncate -s 0 test.txt -s参数用来设定文件的大小,清空文件,就设定为0; 5.查看文原创 2017-05-27 16:34:10 · 453 阅读 · 0 评论 -
机器上运行了四个tomcat,查看每个tomcat对应的端口号
ps -ef |grep tomcatnetstat -ntlp|grep pid原创 2019-04-26 18:25:24 · 3077 阅读 · 0 评论