Shell
Leo丶Fun
这个作者很懒,什么都没留下…
展开
-
makefile中对.PHONE的认识
install:foo install -m 644 foo /usr/bin.PHONY: install 看以上makefile的片段,使用了.PHONY这个目标,下面详细介绍她的用法.来源:点击打开链接.PHONY是一个特殊工作目标(special target) 它用来指定一个假想的工作目标,也就是说它后面的并不是一个实际文转载 2018-01-22 13:18:50 · 1329 阅读 · 0 评论 -
linux grep命令详解
简介grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re...转载 2018-04-26 17:33:41 · 383 阅读 · 0 评论 -
linux test命令详解
test命令是shell环境中测试条件表达式的实用工具。语法test(选项)选项-b<文件>:如果文件为一个块特殊文件,则为真;-c<文件>:如果文件为一个字符特殊文件,则为真;-d<文件>:如果文件为一个目录,则为真;-e<文件>:如果文件存在,则为真;-f<文件>:如果文件为一个普通文件,则为真;-g<文件>:如...转载 2018-04-26 17:38:15 · 12056 阅读 · 0 评论 -
dirname命令介绍-使用dirname在shell脚本中获取当前脚本文件所在的绝对路径
dirname 命令使用示例示例一 来自手册页的例子$ dirname /usr/bin/sort /usr/bin$ dirname stdio.h .1234示例二$ dirname /usr/bin /usr$ dirname /usr/bin/ /usr1234脚本中获取 脚本文件所在的绝对路径shellPath=$(cd "$(dirname "$0")"; pwd)ech...转载 2018-04-26 21:56:52 · 392 阅读 · 0 评论 -
收集的48个Shell脚本小技巧
http://www.jb51.net/article/53967.htm转载 2018-04-26 22:00:00 · 415 阅读 · 0 评论 -
netdata软件安装脚本
#!/usr/bin/env bashexport PATH="${PATH}:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin"uniquepath() { local path="" while read do if [[ ! "${path}" =~ (^|:)"${REPLY}"(:|$) ]]...原创 2018-04-26 22:03:04 · 1929 阅读 · 0 评论 -
Linux shell中的竖线(|)——管道符号
管道符号,是unix一个很强大的功能,符号为一条竖线:"|"。用法: command 1 | command 2 他的功能是把第一个命令command 1执行的结果作为command 2的输入传给command 2,例如:$ls -s|sort -nr (请注意不要复制$符号进去哦)-s 是file size,-n是numeric-sort,-r是reverse,反转该命令列出当前目录中的文档(含...转载 2018-04-27 15:19:25 · 3664 阅读 · 0 评论 -
Shell编程中脱字符(^)的用法
cat configs.signatures.tmp |\ #将configs.signatures.tmp文件内容作为grep命令的输入 grep -v "^$" |\ #-v是grep排除的参数,将configs.signatures.tmp除去空行的内容作为sort命令的输入 sort -u |\ ...原创 2018-04-27 15:32:05 · 12409 阅读 · 0 评论 -
Linux sort命令详解
sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始!1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。[rocrocket@rocrocket programming]$ cat seq.txtbananaapplepearorange[rocrocket@ro...转载 2018-04-27 15:38:43 · 129 阅读 · 0 评论 -
Shell脚本之正则表达式
具体可以参考:http://www.jb51.net/tools/shell_regex.html一、正则表达式的概念及特点: 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。规定一些特殊语法表示字符类、数量限定符和位置关系,然后用这些特殊语法和普通字符一起表示一个模式,这就是...转载 2018-04-27 16:04:06 · 336 阅读 · 0 评论 -
linux bash 和 sh的区别
Linux 中的 shell 有很多类型,其中最常用的几种是: Bourne shell (sh)、C shell (csh) 和 Korn shell (ksh), 各有优缺点。Bourne shell 是 UNIX 最初使用的 shell,并且在每种 UNIX 上都可以使用, 在 shell 编程方面相当优秀,但在处理与用户的交互方面做得不如其他几种shell。Linux 操作系统缺省的 sh...转载 2018-04-27 16:43:00 · 2787 阅读 · 0 评论 -
shellpy—— A tool for convenient shell scripting in Python
1.安装Python(不介绍了)2.安装pip: $sudo apt python-pip(安装的pip可能版本较低,对一些库不支持)3.升级pip:$pip install --upgrade pip4.安装shellpy:$pip install shellpy5.shellpy的使用和Python的语法差不多,如下就是一个例子。注意在shellpy的脚本中既可以使用shell命令也可以使...原创 2018-05-18 10:16:10 · 250 阅读 · 0 评论 -
文本操作脚本----shell和python哪个鸡肋?
1.先看看文本,40多万行的log信息。处理要求:将第6列打印信息tbmt:后面的数值按照十六进制排序2.shell脚本如下图,40万行文本,脚本没关打印要运行6-8个小时左右才能处理完。#! /bin/bash# --------------------------------------------------------------------------------# ...原创 2018-07-29 19:28:24 · 6674 阅读 · 3 评论 -
sed、awk、grep入门
1. sed和awk的区别:如果文件是格式化的,即由分隔符分为多个字段(列)的,优先使用awk。awk适合按列(域)操作,sed适合按行操作。awk适合对文件的抽取整理,sed适合对文件的编辑。2. sed没有破坏性,它不会修改文件,除非使用shell重定向来保存输出结果。默认情况下,所有输出行都被打印到屏幕上。1. sed '1,3d' myfile #删除...原创 2018-08-04 19:39:52 · 298 阅读 · 0 评论 -
shell中的括号(小括号,中括号,大括号)
一、小括号,园括号() 1、单小括号 () ①命令组。括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用。括号中多个命令之间用分号隔开,最后一个命令可以没有分号,各命令和括号之间不必有空格。 ②命令替换。等同于`cmd`,shell扫描一遍命令行,发现了$(cmd)结构,便将$(cmd)中的cmd执行一次,得到其标准输出,再将此输出放...转载 2018-08-05 13:37:41 · 546 阅读 · 0 评论 -
[ SHELL编程 ] echo和printf使用实例
本文主要描述Linux系统中echo和printf命令的使用方法,包括命令参数的含义、使用技巧。1、echo 了解一个命令我们首先要知道它能做什么,它有哪些参数,参数的含义,可以实现我们哪方面的需求。 echo可以直接将字符串打印输出到屏幕,也可以重定向输出到指定文件。 echo的语法:echo [option] [arguments]。首先看下字符串Hello Word打印$ echo...转载 2018-04-26 14:13:16 · 821 阅读 · 0 评论 -
linux中export用法(仅限本次登录有效)
常用用法:export PATH=$PATH:/home/zhaodw用于修改环境变量,但只在本次登录中有效注意:(与shell变量相结合)1 =前PATH变量不加$符号2 再增加的路径用:追加功能说明:设置或显示环境变量。语 法:export [-fnp][变量名称]=[变量设置值]补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续...转载 2018-04-26 13:58:34 · 1745 阅读 · 0 评论 -
Linux /etc/profile文件详解及修改后如何立即生效(使用source命令)
Linux /etc/profile文件的改变会涉及到系统的环境,也就是有关Linux环境变量的东西,学习Linux要了解Linux profile文件的相关原理,这里对则以文件进行具体分析。这里修改会对所有用户起作用。 1、Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。用户可以对自己的...原创 2018-04-26 13:50:36 · 117039 阅读 · 1 评论 -
(原创)Makefile知识点总结
1.Makefile只有行注释,注释是用"#"字符,如果在Makefile中使用“#”字符,可以用反斜框进行转义,如"\#"。2.Makefile的默认文件名为Makefile或makefile,不然命令make无法执行。当然你也可以使用别的文件名来书写Makefile,比如:"Make.linux","Make.AIX"等,如果要指定特定的Makefile,你可以使用make的"原创 2018-01-22 14:01:32 · 401 阅读 · 0 评论 -
Makefile所有内嵌函数
https://www.cnblogs.com/lidabo/p/6185582.html一、文本处理函数以下是GNU make内嵌的文本(字符串)处理函数。1 $(subst FROM,TO,TEXT)函数名称:字符串替换函数—subst。函数功能:把字串“TEXT”中的“FROM”字符替换为“TO”。返回值:替换后的新字符串。示例转载 2018-01-22 14:20:57 · 215 阅读 · 0 评论 -
Makefile 中常见自动变量和命令行选项
1. Makefile 中常见自动变量。命 令 格 式 含 义$* 不包含扩展名的目标文件名称$+ 所有的依赖文件,以空格分开,并以出现的先后为序,可能包含 重复的依赖文件$< 第一个依赖文件的...转载 2018-01-22 14:54:58 · 2728 阅读 · 0 评论 -
Makefile 的特殊目标
.PHONY :目标“ .PHONY ”的所有的依赖被作为伪目标。伪目标时这样一个目标:当使用 make 命令行指定此目标时,这个目标所在规则定义的命令、无论目标文件是否存在都会被无条件执行。.SUFFIXES:特殊目标“ SUFFIXES ”的所有依赖指出了一系列在后缀规则中需要检查的后缀名(就是当前make 需要处理的后缀)。.DEFAULTMakefi转载 2018-02-01 16:25:58 · 513 阅读 · 0 评论 -
Makefile编写----实例展示
本文档内容:1,验证在makefile文件中是否一定需要指定.h文件(头文件)?2,遍历子目录,并且在子目录执行make命令。3,执行make clean时,遍历子目录执行make clean命令。4,使用makefile生成动态库和静态库。测试用例:twohellos.c 文件中有main函数,main 函数调用hellofirst.c和hellosecond.c转载 2018-02-03 13:42:44 · 701 阅读 · 1 评论 -
make makefile cmake qmake都是什么,有什么区别?
作者:玟清链接:https://www.zhihu.com/question/27455963/answer/36722992来源:知乎著作权归作者所有,转载请联系作者获得授权。1. make 是用来执行Makefile的2. Makefile是类unix环境下(比如Linux)的类似于批处理的"脚本"文件。其基本语法是: 目标+依赖+命令,只有在目标文件不存在,或转载 2018-01-30 08:53:33 · 162 阅读 · 0 评论 -
以一个实例说明 CMakeLists.txt 文件的编写
在 Linux 下进行开发很多人选择编写 makefile 文件进行项目环境搭建,而makefile 文件依赖关系复杂,工作量很大。采用自动化的项目构建工具CMake 可以将程序员从复杂的 makefile 文件中解脱出来。CMake根据内置的规则和语法来自动生成相关的 makefile 文件进行编译,同时还支持静态库和动态库的构建具体cmake的介绍和详细语法还是参考转载 2018-01-30 08:59:08 · 692 阅读 · 0 评论 -
自动生成Makefile的全过程详解
相信每个学习Linux的人都知道Makefile,这是一个很有用的东西,但是编写它是比较复杂,今天介绍一个它的自动生成工具,autotools的使用。很多GNULinux的的软件都是用它生成Makefile的,包括我们非常熟悉的Linux内核源代码。 1、准备: 需要工具 autoscan aclocal autoheader转载 2018-01-30 10:49:36 · 6565 阅读 · 0 评论 -
Linux中使用autotools自动生成Makefile
关于Autotools的使用我们知道在Linux下面如果编译一个比较大型的项目,我们可以通过Makefile的方式来完成。但是,我们又蛋疼了,Makefile拥有复杂的语法结构,甚至让人难以领会,当我们项目非常大的时候,维护Makefile会成为一件非常头疼的事情。于是我们就有了autotools工具,专门用来生成Makefile,这个工具让我们很大程度的降低了开发的难度。Autotools并不是...转载 2018-04-25 13:02:00 · 3315 阅读 · 0 评论 -
没有Makefile文件的源码中.sh(shell脚本)文件作用
1.本人最近在虚拟机中Ubuntu系统中尝试安装netdata软件进行对系统CPU等一些参数工作情况进行监控。2.下载完netdata的源码包,打开后里面的文件如下图所示:3.本人在shell编程方面还是菜鸟入门阶段,看了源码包里的文件后一头雾水。之前接触的源码包里都有Makefile文件,只需要在命令行输入make就可以进行编译。但是这个源码包里只有Makefile.am文件和Makefile文...原创 2018-04-25 14:57:23 · 1357 阅读 · 0 评论 -
shell脚本中位置变量和环境变量
一. 1.位置变量知识点如下:2.列子:prog2.sh中有:命令行执行后显示:二. 查看系统中所有环境变量命令:export例如PATH这个环境变量为:原创 2018-04-25 15:23:54 · 3392 阅读 · 0 评论 -
shell脚本中if 命令参数说明
shell if 命令参数说明-b 当file存在并且是块文件时返回真-c 当file存在并且是字符文件时返回真-d 当pathname存在并且是一个目录时返回真-e 当pathname指定的文件或目录存在时返回真-f 当file存在并且是正规文件时返回真-g 当由pathname指定的文件或目录存在并且设置了SGID位时返回为真-h 当file存在...原创 2018-04-25 16:45:34 · 650 阅读 · 0 评论 -
Shell编程中的here document用法(cat和EOF搭配)
什么是Here Document?Here Document 是在Linux Shell 中的一种特殊的重定向方式,它的基本的形式如下cmd << delimiter Here Document Contentdelimiter其作用是将两个 delimiter 之间的内容(Here Document Content 部分) 传递给cmd 作为输入参数;比如在终端中输入cat <...原创 2018-04-26 13:25:06 · 621 阅读 · 0 评论 -
从windows到linux的换行转换工具dos2unix
同学们也许知道,windows中的文本文件的换行符是"\r\n",而linux中是"\n"。由于换行符的不同,所以有的时候会发生一些莫名其妙的状况。至于具体什么状况我就不举栗子了,场景要说起来比较多。反正具体的情况是酱婶的:你在windows下写了一个文本文件:拷贝到linux下之后,用cat -v afile.txt查看文件,结果变成了酱紫:^M什么鬼??结果也许会演变成...转载 2019-06-20 08:57:39 · 741 阅读 · 0 评论