shell
文章平均质量分 63
hanglinux
激情 梦想 认真 执着
展开
-
shell脚本知识(三) 正则表达式 grep sed awk
1、正则表达式匹配给定文本中的所有单词:( ?[a-zA-Z]+ ?) ?用于匹配单词前后可能出现的空格。匹配IP地址:[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} 括号分割的4个整数。 2、grep “mach_text” file1 file2 file3….递归搜索文件: grep “text” ./ -R原创 2015-02-11 15:44:41 · 1299 阅读 · 0 评论 -
sed 常用方式整理
一 .再sed中引用变量,如果不加处理直接 $var 是不能引用变量的,引用变量的方式:1.eval sed ’s/$a/$b/’ filename 2.sed "s/$a/$b/" filename 双引号3.sed ’s/’$a’/’$b’/’ filename 变量单独加引号4.sed s/$a/$b/ filename 不加引号二 删除:删除原创 2017-05-17 15:15:53 · 539 阅读 · 0 评论 -
SSH 远程连接端口转发
需求分析:如何才能访问内网中的linux主机呢? 由几个靠谱的方法:1 路由端口转发,但是需要有路由器配置修改权限2 花生壳 向日葵相关产品,但是平台有局限性3 靠谱简单的办法 : ssh 端口转发ssh 端口转发需要的条件: 有一台有公网IP地址的主机,买个vps就ok,当然也可以使用家用路由器。参考一篇经典文章:实战SSH端口转发基本操作流程:希望台内网一太原创 2017-03-10 11:17:33 · 1953 阅读 · 0 评论 -
Linux下文本文件合并和去除重复操作
Linux下处理文本的能力还是很强大的。本文主要涉及到的命令为cat uniq sort。一 命令简单介绍cat:将文本文件读出来 (concatenate files and print on the standard output)文件去重合并的前提条件是先取出文件的内容。uniq: 用来处理重复的行。(report or omit repeated lines)原创 2016-01-23 11:10:46 · 18891 阅读 · 0 评论 -
linux中find批量删除空文件及空文件夹脚本
linux下批量删除空文件(大小等于0的文件)的方法 代码如下复制代码find . -name "*" -type f -size 0c | xargs -n 1 rm -f用这个还可以删除指定大小的文件,只要修改对应的 -size 参数就行,例如: 代码如下复制代码find .转载 2015-11-19 12:34:27 · 12766 阅读 · 0 评论 -
一个程序演示所有的shell编程知识
演示程序#!/bin/sh -x#由反引号括起来的也是一条命令,Shell先执行该命令,然后将输出结果立刻代换到当前命令行中。例如定义一个变量存放date命令的输出:echo `date`#命令代换也可以用$()表示:echo $(date)#如果一个变量叫做VARNAME,用${VARNAME}可以表示它的值,在不引起歧义的情况下也可以用$VARNAME表示它的值。通过以转载 2015-07-24 14:40:04 · 496 阅读 · 0 评论 -
实现ssh无密码登录 shell脚本
默认远程主机上已经存在 ~/.ssh 目录。在自己PC上执行下面脚本,输入服务器用户名和ip地址,下次登录可实现无密码登录。#!/bin/bashid_res_pub=~/.ssh/id_rsa.pubif [ ! -f "$id_res_pub" ];then ssh-keygen -t rsaelse echo "id_rsa.pub is exist!"fiec原创 2015-05-23 09:45:14 · 3747 阅读 · 0 评论 -
linux 磁盘性能监控
linux下对于查看进程的命令很多也很强大,常用的如:ps top但是在磁盘性能监控方面就没有那么统一了。下面列举一些磁盘监控命令,此处只是起到抛砖引玉作用,详细使用参数请参考man手册。一 dfdf命令可以获取硬盘被占用了多少空间,目前还剩下多少空间等信息,它也可以显示所有文件系统对i节点和磁盘块的使用情况。常见的使用方法如:df -h 以人类容易阅读的方式显示。原创 2015-06-24 09:40:47 · 1287 阅读 · 0 评论 -
dd命令制作U盘启动盘 wodim刻录光盘 附dd命令介绍
首先格式化U盘:使用fdisk -l 查看U盘到挂载点,如我的为/dev/sdb1。卸载U盘,执行格式化命令:mkfs.vfat /dev/sdb1然后重新挂载U盘,开始制作启动盘:# dd if=/ntfs/linux_all/sys/CentOS-7.0-1406-x86_64-DVD.iso of=/dev/sdb注意是/dev/sdb 不是/dev/sdb1 否侧出现错误此原创 2014-07-18 20:14:47 · 6582 阅读 · 0 评论 -
Centos 6.6命令行实现自动补全
公司同事用的ubuntu系统,自动补全功能不错,但是本人的Centos 6.6系统使用sudo的时候就不能自动补全了,git命令也不能自动补全。网上搜索一番解决方法如下。一 git不能补全问题下载git源码 $ git clone https://www.kernel.org/pub/scm/git/找到git-completion.bash文件拷贝到 ~/目录下$ s原创 2015-04-24 23:36:57 · 4834 阅读 · 0 评论 -
LINUX ulimit命令 详解
概述系统性能一直是一个受关注的话题,如何通过最简单的设置来实现最有效的性能调优,如何在有限资源的条件下保证程序的运作,ulimit 是我们在处理这些问题时,经常使用的一种简单手段。ulimit 是一种 linux 系统的内键功能,它具有一套参数集,用于为由它生成的 shell 进程及其子进程的资源使用设置限制。本文将在后面的章节中详细说明 ulimit 的功能,使用以及它的影响,并以具体的转载 2015-05-06 17:24:44 · 611 阅读 · 0 评论 -
linux 下解压命令大全
.tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar 是打包,不是压缩!)———————————————.gz解压 1:gunzip FileName.gz解压 2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar zxv原创 2013-11-16 14:14:28 · 935 阅读 · 0 评论 -
vim中的文字替换
[range]s/s1/s2/ [option]其中[range]表示检索范围,省略时表示当前行。如:"1,10"。表示从第1到第10行“%”表示整个文件同“1,$“。”. ,$"。从当前行到文件尾。option:/g表示在全局文件中进行替换。/c表示在每次替换之前需要用户进行确认。原创 2013-11-18 21:47:45 · 1276 阅读 · 0 评论 -
vim自动缩进
1、配置文件的位置在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,通常已经存在一个.vimrc文件。2、设置语法高亮显示1) 打开vimrc,添加以下语句来使得语法高亮显示: syntax on2) 如果此时语法还是没有高亮显示,那么在/et原创 2013-11-18 21:46:45 · 1105 阅读 · 0 评论 -
shell脚本知识(一) 基本知识预备
1、shell脚本一般以#!开头。2、printf: printf “%-5s %-10s %-4s\n” No Name Mark。%-5s指明一个格式为左对齐且宽度为5的字符串替代(-表示左对齐),如果不用-指定对齐方式,字符串则采用右对齐。宽度指定了保留给某个变量的字符数。对Name而言,保留宽度是10。3、获得字符串的长度:var=1213434545345原创 2015-02-09 11:29:20 · 878 阅读 · 0 评论 -
shell脚本知识(二)命令字符操作
1、cat 不仅可以读取文件并拼接数据,他还能够从标准输入中进行读取。用cat将输入文件的内容与标准输入拼接在一起:$ echo 'Text through stdin' | cat - file.txt压缩空白行: 将文本中多个空白行压缩成单个: cat -s file。 移除空白行:cat file | tr -s '\n' 。 将连续多个'\n' 字符压缩成单个原创 2015-02-10 10:16:52 · 950 阅读 · 0 评论 -
读懂diff
diff是Unix系统的一个很重要的工具程序。它用来比较两个文本文件的差异,是代码版本管理的基石之一。你在命令行下,输入: $ diff diff就会告诉你,这两个文件有何差异。它的显示结果不太好懂,下面我就来说明,如何读懂diff。一、diff的三种格式由于历史原因,diff有三种格式: * 正常格式(normal diff) * 上下文格式(转载 2013-11-25 23:20:43 · 707 阅读 · 0 评论 -
文件批量重命名和处理文件名中的空格
文件中的空格问题:如果文件中有空格,在执行shell脚本的时候可能会出错:ls 1 2.txt jus t a.txt执行如下脚本:for file in `ls *.srt`do echo $filedone输出:12.txtjusta.txt.txt所以要对空格进行处理:Shell 脚本中有个变量叫 IFS(Internal Fi原创 2017-06-22 13:43:06 · 9258 阅读 · 0 评论