简单来说,这个技巧相应的是例如以下一种场景 假设有文本例如以下 cccc aaaa bbbb dddd bbbb cccc aaaa 如今须要对它进行去重处理.这个非常easy,sort -u就能够搞定,可是假设我希望保持文本原有的顺序.比方这里有两个aaaa,我仅仅是希望去掉第二个aaaa,而第一个aaaa在bbbb的前面.去重后仍旧要在它前面.所以我期望的输出结果是 cccc aaaa bbbb dddd 当然,这个问题本身并不难.用C++或python写起来都非常easy,但所谓杀机焉用牛…
日志处理中一些shell命令技巧 阴差阳错的做的日志分析,前途未卜的这段日子,唯一还有点意思的可能就是手动的处理大量日志.总结一下. 日志文件的输入是动则几个G的文本.从N个这样的文件中得到一个列表,一个数字,一个比例.在什么工具都没有情况下,用shell命令不仅是验证系统数据的准确性的方法,也是一个很好的学习过程. 使用cut命令切割日志行 下面的一行典型的apache访问日志: 120.51.133.125 - - [26/Apr/2013:12:20:06 +0800] "GET /ski…
Linux_CentOS常用命令 关机 init 重启 init 列出当前目录的下的文件 ls //列出当前目录下的文件 ll //列出当前目录下的文件信息 等同ls -l 命令 切换目录 cd 目录名 //进入到改目录名下 cd ../ //返回上一级目录 查看当前目录路径 pwd 切换最近使用过的目录 cd - 清屏 clear 查看网卡信息 ip addr / ifconfig 看网络是否通畅 ping 127.0.0.1 Linux shell 命令技巧 1.tab 补全 命令+( 次)…
之前想把代码打印出来看来着,后来合并完之后放在word里发现有2000多页,然后放弃了~anyway,这个命令还是挺有用的. 比如我有文本a001.dat, a002.dat, a003.dat ...,然后想合并成一个文本.直接在shell里敲下面这条(linux系统或者win下安装了cygwin): awk 1 a*.dat > a.dat awk是文本处理工具:1代表true,一直执行下去:*是通配符,代表任意字符.…
前言 在Linux中,文本处理操作是最常见的,应用非常广泛,如果能熟练掌握,可以大大提高开发效率. awk/sed/grep是文本操作领域的“三剑客”,学会了这3个命令就可以应对绝大多数文本处理场景.这里,不对这三个命令进行过多的冗余描述,只是记录最常见的几种用法,起个抛砖引玉的作用.详细的文档还请参考官方文档. 特长: grep 更适合单纯的查找和匹配文本 sed  更适合编辑匹配到的文本,如文本替换 awk 更适合格式化文本,对文本进行比较复杂格式处理 三个命令有些功能是重合的,可以灵活选用…
1.删除0字节文件 find -type f -size 0 -exec rm -rf {} ; 2.查看进程 按内存从大到小排列 ps -e -o "%C : %p : %z : %a"|sort -k5 -nr 3.按cpu利用率从大到小排列 ps -e -o "%C : %p : %z : %a"|sort -nr 4.打印说cache里的URL grep -r -a jpg /data/cache/* | strings | grep "http:…
使用Linux shell是我每天的基本工作,但我经常会忘记一些有用的shell命令和l技巧.当然,命令我能记住,但我不敢说能记得如何用它执行某个特定任务.于是,我开始在一个文本文件里记录这些用法,并放在我的Dropbox里,现在,向大家分享这个文件.这个文件我会不断的更新.需要注意一点的是,有些用法需要在你的Linux系统里安装额外的软件. UPDATE: November 25, 2013 检查远程端口是否对bash开放: echo >/dev/tcp/8.8.8.8/53 &&…
调试 bash 脚本的技巧 加 -x 参数运行 bash 脚本时,会显示执行的语句 # 也可以在 demo.sh 中加上 set -x bash -x demo.sh 设置环境变量,然后通过如上方式运行脚本时,会显示行号 export PS4='+${BASH_SOURCE}:${LINENO}:${FUNCNAME[0]}: ' 参考 [耗子叔-如何调试BASH脚本](https://coolshell.cn/articles/1379.html/comment-page-1#comment-…
①CentOS的实用技巧: 一.按下ctrl+alt+F2可由图形界面切换至命令行(shell窗口),按下ctrl+alt+F1可由命令行切换至图形界面(前提是安装CentOS时软件选择项选择安装了图形界面,一般是GNOME) 二.CentOS似乎输入密码时支持复制粘贴,至少MySQL输入密码时是可以的. 三.自己手动配置的软件(如tomcat压缩包)一般放在/usr/local/目录下. ②shell命令记录: 一.ifconfig命令是Linux中用于显示或配置网络设备的命令,英文全称是ne…
Shell应用技巧 小技巧: 1.命令补全功能: <Tab>键 2.清屏: Ctrl+l 3.删除光标前所有内容: Ctrl+u 4.命令历史记录: history 这时:  !history所列出的命令标号,就可以执行那条命令. 如: !188 而且: 按方向键↑和↓可查找以前执行过的命令. 重要技巧: 1.命令别名: 作用: 可以使操作更加容易,命令能够更加容易记忆. alias: 显示系统已经定义了的别名. 定义别名: alias copy=cp alias drm="rm -…
最近在调试一个基于Matlab的程序,在偶然间发现了几个比较有趣的技巧,给大家分享一下(很可能是太菜鸟了,没有涉及这方面,大方之家请勿见笑,对您有所帮助请点赞!) 1. Matlab语言是一种解释型语言(interpreter) 就像我在总结软件架构数据流时的一种:Interpreter / virtual machine (解释器/虚拟机),具体架构可以参看以下博文:http://blog.csdn.net/lg1259156776/article/details/46802107(解释性语言…
在ipython终端时,可能临时需要使用shell命令进行简单处理: 可以在shell命令前面使用 !(感叹号) 比如在win7,ipython下想要使用sublime新建一个py,可以这样 !subl.exe <name>.py…
转载自http://www.cnblogs.com/stephen-liu74/ 一.    特殊文件: /dev/null和/dev/tty Linux系统提供了两个对Shell编程非常有用的特殊文件,/dev/null和/dev/tty.其中/dev/null将会丢掉所有写入它的数据,换句换说,当程序将数据写入到此文件时,会认为它已经成功完成写入数据的操作,但实际上什么事都没有做.如果你需要的是命令的退出状态,而非它的输出,此功能会非常有用,见如下Shell代码:    /> vi test…
在shell命令终端中,Ctrl+n相当于方向向下的方向键,Ctrl+p相当于方向向上的方向键.   在命令终端中通过它们或者方向键可以实现对历史命令的快速查找.这也是快速输入命令的技巧.   在命令终端中可以通过Ctrl+r 实现快速检索使用过的历史命令.Ctrl+r中r是retrieve中r.   Ctrl+a:光标回到命令行首. (a:ahead)   Ctrl+e:光标回到命令行尾. (e:end)   Ctrl+b:光标向行首移动一个字符. (b:backwards)   Ctrl+ …
大部分Linux开发者对vi命令相当熟悉,可是遗憾的是,大部分开发者都只能掌握一些最常用的Linux vi命令,下面介绍的10个vi命令虽然很多不为人知,但是在实际应用中又能让你大大提高效率. 在使用vi 编辑器时—无论是初次使用的用户,还是有经验的用户—大多数人往往只掌握核心命令集,这些命令可以执行最常用的功能:导航或保存文件:插入.更新.删除或搜索数据:退出但不保存修改. 但是,vi 编辑器极其强大,特性和功能非常丰富.即使在多年使用vi 之后,您仍然可能会发现有不知道的新命令.本文讨论的命…
摘要:大部分Linux开发者对vi命令相当熟悉,可是遗憾的是,大部分开发者都只能掌握一些最常用的Linux vi命令,下面介绍的10个vi命令虽然很多不为人知,但是在实际应用中又能让你大大提高效率. 在使用vi 编辑器时—无论是初次使用的用户,还是有经验的用户—大多数人往往只掌握核心命令集,这些命令可以执行最常用的功能:导航或保存文件:插入.更新.删除或搜索数据:退出但不保存修改. 但是,vi 编辑器极其强大,特性和功能非常丰富.即使在多年使用vi 之后,您仍然可能会发现有不知道的新命令.本文讨…
在上篇<bash shell命令(1)>中,介绍了几种简单的linux shell命令,今天继续介绍bash shell命令 本文地址:http://www.cnblogs.com/archimedes/p/bash-shell2.html,转载请注明源地址. 监测程序 1.探查进程 想监测进程,需要使用ps命令,ps命令可以输出运行在系统上的所有程序的许多信息 默认情况下,pa命令不会出现提供那么多的信息. ps命令最常用的还是用于监控后台进程的工作情况,因为后台进程是不和屏幕键盘这些标准输…
让我们用这些Unix/Linux命令技巧开启新的一年,提高在终端下的生产力.我已经找了很久了,现在就与你们分享. 删除一个大文件 我在生产服务器上有一个很大的200GB的日志文件需要删除.我的rm和ls命令已经崩溃,我担心这是由于巨大的磁盘IO造成的,要删除这个大文件,输入: > /path/to/file.log # 或使用如下格式 : > /path/to/file.log # 然后删除它 rm /path/to/file.log 如何记录终端输出? 试试使用script命令行工具来为你的…
摘要:大部分Linux开发者对vi命令相当熟悉,可是遗憾的是,大部分开发者都只能掌握一些最常用的Linux vi命令,下面介绍的10个vi命令虽然很多不为人知,但是在实际应用中又能让你大大提高效率. 在使用vi 编辑器时—无论是初次使用的用户,还是有经验的用户—大多数人往往只掌握核心命令集,这些命令可以执行最常用的功能:导航或保存文件:插入.更新.删除或搜索数据:退出但不保存修改. 但是,vi 编辑器极其强大,特性和功能非常丰富.即使在多年使用vi 之后,您仍然可能会发现有不知道的新命令.本文讨…
从这篇开始,是文本内容操作,区别于文本操作. shell,perl,python,一直都是文本操作的专家语言,而我们今后学习的的将是shell的噱头--文本操作.下面提到最常见的一个: grep 这算是文本内容的一个重量级选手,能根据某些规格在上千行的文本文件中查找所需要的数据.他能接受正则表达式和通配符.   基础实例: 1. 命令翻译包含给定match_pattern的文本行,如我在grep.txt中查找PATTERN grep PATTERN grep.txt or grep "PATTE…
在shell命令终端中.Ctrl+n相当于方向向下的方向键,Ctrl+p相当于方向向上的方向键. 在命令终端中通过它们或者方向键能够实现对历史命令的高速查找.这也是高速输入命令的技巧. 在命令终端中能够通过Ctrl+r 实现高速检索使用过的历史命令.Ctrl+r中r是retrieve中r. Ctrl+a:光标回到命令行首. (a:ahead) Ctrl+e:光标回到命令行尾. (e:end) Ctrl+b:光标向行首移动一个字符. (b:backwards) Ctrl+ f:光标向行尾移动一个字…
shell中的特殊字符 shell中除使用普通字符外,还可以使用一些具有特殊含义和功能的特殊字符.在使用它们时应注意其特殊的含义和作用范围.下面分别对这些特殊字符加以介绍. 1. 通配符 通配符用于模式匹配,如文件名匹配.路经名搜索.字符串查找等.常用的通配符有*.?和括在方括号[]中的字符序列.用户可以在作为命令参数的文件名中包含这些通配符,构成一个所谓的“模式串”,在执行过程中进行模式匹配. * 代表任何字符串(长度可以不等),例如:“f*”匹配以f打头的任意字符串.但应注意,文件名前的圆点…
十一.  awk编程:    1.  变量:    在awk中变量无须定义即可使用,变量在赋值时即已经完成了定义.变量的类型可以是数字.字符串.根据使用的不同,未初始化变量的值为0或空白字符串" ",这主要取决于变量应用的上下文.下面为变量的赋值负号列表: 符号 含义 等价形式 = a = 5 a = 5 += a = a + 5 a += 5 -= a = a - 5 a -= 5 *= a = a * 5 a *= 5 /= a = a / 5 a /= 5 %= a = a %…
基本脚本 反引号: ``  反引号里面的内容是命令行,通过反引号用户可以将shell命令的输出赋给变量,比如: test=`date +%y%m%d` echo "The time is :" $test 重定向: 输出重定向: 就是将shell命令的输出结果发送到一个文件里面 格式:command >  file 如果目标文件里面已经有内容了,那么会将原有的内容清除并添加新内容,如果不想改动原来文件的内容,就将">"换成">>&q…
二十三. Bash Shell编程:  1.  读取用户变量:    read命令是用于从终端或者文件中读取输入的内建命令,read命令读取整行输入,每行末尾的换行符不被读入.在read命令后面,如果没有指定变量名,读取的数据将被自动赋值给特定的变量REPLY.下面的列表给出了read命令的常用方式: 命令格式 描述 read answer 从标准输入读取输入并赋值给变量answer. read first last 从标准输入读取输入到第一个空格或者回车,将输入的第一个单词放到变量first中…
Shell 命令行求两个文件每行对比的相同内容 遇到的一个实际问题是,2017年08月01日起,所有未经实名的域名,全部停止解析.而我手上有不少域名,其中很多都是没有实名的.但我不知道哪些实名了,哪些没有实名.所以,我搞到了两个文件: 我的上级代理商的所有未实名的域名列表 我的所有域名列表 现在,我需要得到的是,我的域名在所有未实名域名列表中出现的个数. 简单来说,就是求a文件和b文件的每行对比的合集. 两层 while 循环求合集 事实上我解决这个问题是用js解决的.把两个文件构建成数组之后,…
第4章 Vim编辑器与Shell命令脚本 章节简述: 本章首先讲解如何使用Vim编辑器来编写.修改文档,然后通过逐个配置主机名称.系统网卡以及Yum软件仓库参数文件等实验,帮助读者加深Vim编辑器中诸多命令.快捷键.模式切换方法的理解.然后把前面章节中讲解的Linux命令.命令语法与Shell脚本中的各种流程控制语句通过Vim编辑器写到Shell脚本中结合到一起,实现最终能够自动化工作的脚本文件.本章最后演示了怎样通过at命令与crond计划任务服务来分别实现一次性的系统任务设置和长期性的系统任…
(一)编程实现以下功能,并利用 Hadoop 提供的 Shell 命令完成相同任务: (1)     向 HDFS 中上传任意文本文件,如果指定的文件在 HDFS 中已经存在,则由用户来指定是追加到原有文件末尾还是覆盖原有的文件: 开启Hadoop: 创建两个文件以供实验使用: 上传本地文件到hdfs系统的指令: hadoop fs -put text.txt 文件存在,追加到文件末尾的指令: hadoop fs -appendToFile local.txt text.txt 文件存在,覆盖文…
Mac 在shell命令终端中,Ctrl+n相当于方向向下的方向键,Ctrl+p相当于方向向上的方向键. 在命令终端中通过它们或者方向键能够实现对历史命令的高速查找.这也是高速输入命令的技巧. 在命令终端中能够通过Ctrl+r 实现高速检索使用过的历史命令.Ctrl+r中r是retrieve中r. Ctrl+a:光标回到命令行首. (a:ahead) Ctrl+e:光标回到命令行尾. (e: end) Ctrl+b:光标向行首移动一个字符. (b:backwards) Ctrl+ f:光标向行尾…
## -print 将匹配的文件输出到标准输出## -exec 将匹配的文件执行该参数所给出的shell命令## -ok 将匹配的文件执行该参数所给出的shell命令,每次执行命令有提示 #-------------------------------------------------------------find /etc -name passwd -exec rm {} \; ## {} \;中间有空格,不提示 find /etc -name passwd -ok rm {} \; ##…