![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
shell
文章平均质量分 87
worldchinalee
这个作者很懒,什么都没留下…
展开
-
使用getopt命令解析shell脚本的命令行选项
本文将要介绍的是getopt命令,它可以同时处理短选项和长选项。首先,getopt命令不是一个标准的unix命令,但它在大多数Linux的发行版中都自带了有,如果没有,也可以从getopt官网上下载安装。在getopt的较老版本中,存在一些bug,不大好用,在后来的版本中解决了这些问题,我们称之为getopt增强版。通过-T选项,我们可以检查当前的getopt是否为增强版,返回值为4,则表...原创 2020-04-02 15:20:11 · 295 阅读 · 0 评论 -
linux中的--双横杠有什么作用
bash的man page是这么写的:A -- signals the end of options and disables further optionprocessing. Any arguments after the -- are treated as filenames andarguments. An argument of - is equivalent to --....原创 2020-03-29 16:51:17 · 2072 阅读 · 0 评论 -
while read line 用法详细介绍
循环中的重定向或许你应该在其他脚本中见过下面的这种写法:while read linedo…done < file刚开始看到这种结构时,很难理解< file是如何与循环配合在一起工作的。因为循环内有很多条命令,而我们之前接触的重定向都是为一条命令工作的。这里有一个原则,这个原则掌握好了,这个问题就很简单了:对循环重定向的输入可适用于循环中的所有...转载 2020-01-20 10:58:28 · 30228 阅读 · 0 评论 -
linux中find与rm实现查找并删除目录或文件
inux 下用find命令查找文件,rm命令删除文件。删除指定目录下指定文件find 要查找的目录名-name .svn |xargs rm -rf删除指定名称的文件或文件夹:find -type d | grep .svn$ | xargs rm -r分析:find -type d | grep .svn$ 通过此命令查找文件夹 过滤正则表达式中的目录| xargs rm ...转载 2020-01-13 10:05:08 · 1214 阅读 · 0 评论 -
df命令和du命令-个人
什么是df命令?有时你需要知道在某个设备上还有多少磁盘空间。df命令可以让你很方便地查看所有已挂载磁盘的使用情况。 $ dfFilesystem 1K-blocks Used Available Use% Mounted on/dev/sda2 18251068 7703964 9605024 45% //dev/sda1 101086 18680 77187 20% /boo...转载 2018-11-22 14:56:35 · 1222 阅读 · 0 评论 -
linux中的ps命令常用参数-个人
ps命令是什么?ps命令能够给出当前系统中进程的快照。它能捕获系统在某一时间的进程状态。如果想要不断更新查看这个状态,可以配合watch命令或使用top命令ps命令支持三种语法格式:Unix风格的参数,前面加单破折线 BSD风格的参数,前面不加破折线 GNU风格的长参数,前面加双破折线常用的ps命令参数参数 描述 -a 显示除控制进程(session lead...转载 2018-11-22 11:32:52 · 3578 阅读 · 0 评论 -
linux bash Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
在linux下配置shell参数说明前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。 例如,$ 表示当前Shell进程的ID,即pid,看下面的代码:[bigdata@master /]$ echo $$2217特殊变量列表变量 含义 $0 当前脚本的文件名。 $n 传递给...转载 2018-09-14 17:40:06 · 1494 阅读 · 0 评论 -
Linux 命令之 set
set命令可以用来定制shell环境,使用选项“o”来打开或者关闭选项。例如打开选项:set -o 选项,关闭选项目:set +o 选项。 例如要打开vi交互式命令行编辑,则如下:[bigdata@master bin]$ set -o #查看当前设置情况allexport offbraceexpand onemacs offerrexit...转载 2018-09-14 17:08:55 · 2897 阅读 · 0 评论 -
Shell分支语句case … esac教程
分支语句非常实用,基本上高级语言都支持分支语句(python 没有),大多数都使用switch ... case格式,但是在Shell却没有switch ... case,不过别担心,Shell是支持分支语句的,只不过使用case ... esac格式而已。二者在本质上是相同的。一、Shell分支语句case···esac语法case 值 in模式1) command1 ...转载 2018-09-14 16:45:49 · 641 阅读 · 0 评论 -
linux 下 `dirname $0`
【`】,学名叫“倒引号”, 如果被“倒引号”括起来, 表示里面需要执行的是命令。比如 `dirname $0`, 就表示需要执行 dirname $0 这个命令【“”】 , 被双引号括起来的内容, 里面 出现 $ (美元号: 表示取变量名) `(倒引号: 表示执行命令) \(转义号: 表示转义), 其余的才表示字符串。【’‘】, 被单引号括起来的内容, 里面所有的都表...转载 2018-09-17 08:57:36 · 175 阅读 · 0 评论 -
在 Shell 脚本中调用另一个 Shell 脚本的三种方式
本文转载自:https://blog.csdn.net/simple_the_best/article/details/76285429先来说一下主要以下有几种方式:fork: 如果脚本有执行权限的话,path/to/foo.sh。如果没有,sh path/to/foo.sh。 exec: exec path/to/foo.sh source: source path/to/foo.s...转载 2018-09-04 11:49:15 · 27680 阅读 · 0 评论 -
linux中时间常用命令
使用date -d可以获得格式化后的时间,例如: # 指定时间的一个小时之后[root@tdxy-bigdata-04 tmp_ac2]# date -d "2018-09-03 12:23:22 1 hours" +"%Y-%m-%d %H:%M:%S"2018-09-03 13:23:22# 指定时间的一个小时之前[root@tdxy-bigdata-04 tmp_ac2]# ...原创 2018-09-04 11:31:03 · 207 阅读 · 0 评论 -
Shell编程实践之批量安装JDK
实验环境 只有两台机子,一台虚拟机192.168.1.200,另外一台物理机192.168.1.201。目标执行一个shell脚本,给这两台机子自动安装jdk。 实验步骤1.自动设置ssh免密码登录执行脚本之后,遍历服务器ip,对每一个服务进行如下操作2.每台服务器自动从数据服务器(http服务器,提供jdk安装包下载)上下载jdk3.下载jdk后进行解压,并设置环境遍历 关键点1.设置ssh免密...转载 2018-06-05 14:10:09 · 259 阅读 · 0 评论 -
shell之sed基本用法
1.sed介绍及工作流程 很多时候我们在linux下面都需要去编辑一些文件。我们所使用的编辑器一般都是vi/vim。vim属于屏幕编辑器,所谓屏幕编辑器是说,我们编辑一个文件的时候,需要把这个文件打开,这里面存在两个问题:1.因为我们需要把这个文件打开,所以如果说一个比较大的文件的话,将会消耗很多的内存 2.当我们在编辑文件的时候,必须要互动,这样的话,如果我们在写脚本的时候,是很难调用vi...原创 2018-04-29 17:28:44 · 312 阅读 · 0 评论 -
shell中export的作用和点空格运行脚本的意思
一直对shell中export 变量这个概念理解的模模糊糊,今天就来总结下。在命令行中定义变量很简单,如下:[plain] view plain copy[root@zhenglq ~]#VAR=zhenglq [root@zhenglq ~]#echo $VAR zhenglq 但是这么定义的变量只在该shell中有效,在其它shell或者子shell中都无法访问例如重新打开一个终端窗口或...转载 2018-05-10 11:06:18 · 786 阅读 · 0 评论 -
awk内建变量示例详解之NR、FNR、NF
NR表示从awk开始执行后,按照记录分隔符读取的数据次数,默认的记录分隔符为换行符,因此默认的就是读取的数据行数,NR可以理解为Number of Record的缩写。 在awk处理多个输入文件的时候,在处理完第一个文件后,NR并不会从1开始,而是继续累加,因此就出现了FNR,每当处理一个新文件的时候,FNR就从1开始计数,FNR可以理解为File Number of Record。 NF表示...转载 2018-03-14 22:10:51 · 209 阅读 · 0 评论 -
Linux shell 脚本中, $@ 和$# 分别是什么意思?
$@:表示所有脚本参数的内容$#:表示返回所有脚本参数的个数。示例:编写如下shell脚本,保存为test.sh#!/bin/shecho "number:$#"echo "argume:$@"执行脚本:./test.sh first_arg second_arg说明:给脚本提供了两个参数,所以$#输出的结果是2,$@代表了参数的内容!...转载 2018-03-14 21:37:42 · 6057 阅读 · 0 评论 -
uniq命令
uniq命令用于报告或忽略文件中的重复行,一般与sort命令结合使用。语法uniq(选项)(参数)选项-c或——count:在每列旁边显示该行重复出现的次数;-d或--repeated:仅显示重复出现的行列;-f<栏位>或--skip-fields=<栏位>:忽略比较指定的栏位;-s<字符位置>或--skip-chars=<字符位置>:忽略比较...转载 2018-03-06 18:36:51 · 174 阅读 · 0 评论