一次shell脚本小事故,从中学习排错过程 事出,童鞋使用shell脚本搭建测试环境的过称中..... 配置环境变量文件:/etc/profile(用于升级JDK或其他) 手动编辑方法:vi /etc/profile:将所需的配置信息加入最后即可,source /etc/profile即可生效. 不过本次遇到的是使用shell脚本中的echo语句 示例:学生是这么写的 查看配置文件,结果是这样的: 疑问:为啥与脚本中写的不一样了? 解答:首先这个是没有问题的,只不过是展开了PATH变量. 当然,…
awk生于1977年,创始人有三个,分别为 Alfred Aho,Peter Weinberger, 和 Brian Kernighan,名称源于三个创始人的姓的首字母. 作用:处理文本文件. awk的特色是可以对行和列进行操作,输入man awk可以查看awk手册,下面将主要以例子来学习awk语言. 语法: mawk [-W option] [-F value] [-v var=value] [--] 'program text' [file ...] mawk [-W option] [-F…
终端打印 终端打印的常用命令有两个:echo和print 首先,我先介绍echo 1.echo echo这个命令接受三种形式的参数,实例如下: echo "Hello World" echo 'Hello World' echo Hello World 这三中形式的命令输出的都是同样的结果,但是,每种方法都有它相应的"副作用" 例如如下的结果: 从结果中我们可以看出,以双引号为参数的命令并不能识别标点符号,此时,如果仍使用双引号我们可以加上转义字符,并使用 -e 参…
1,echo "test" > test.txt    输出重定向到text.txt,文件不存在就创建 echo "test" >> test.txt    追加输出重定向到text.txt,文件不存在就创建 2, $# 是启动脚本时携带的参数个数 -ne 是不等于 这个语句的意思是“如果shell的启动参数不等于1个”$# 表示提供到shell脚本或者函数的参数总数: $1 表示第一个参数. -ne 表示 不等于 另外: 整数比较 -eq 等于,…
1.Bash中的READ命令 #读取n个字符存入变量 read -n number_of_chars variable_name 示例: amosli@amosli-pc:~$ read -n var heamosli@amosli-pc:~$ echo $var he #不回显的方式读取密码 read -s var 示例: amosli@amosli-pc:~$ read -s var amosli@amosli-pc:~$ echo $var pw #显示提示信息 read -p "Ente…
1.关于文件描述符和重定向: 文件描述符是与一个打开的文件或数据流相关联的整数.文件描述符0.1以及2是系统预留的. 0——stdin(标准输入) 1——stdout(标准输出) 2——stderr(标准错误) 使用“echo $?”来显示状态 amosli@amosli-pc:~/learn$ echo $? amosli@amosli-pc:~/learn$ > out.txt //没有任何输出,因为已经重定向到out.txt里面了 amosli@amosli-pc:~/learn$ cat…
sed(意为流编辑器,英语“stream editor”的缩写)是Unix/linux常见的命令行程序.sed用来把文档或字符串里面的文字经过一系列编辑命令转换为另一种格式输出,即文本替换.sed通常用来匹配一个或多个正则表达式的文本进行处理. 输入sed --help查看帮助信息: amosli@amosli-pc:~/learn/sed$ sed --help Usage: sed [OPTION]... {script-only-if-no-other-script} [input-fil…
linux中(chattr)创建不可修改文件的方法 在常见的linux扩展文件系统中(如ext2.ext3.ext4等),可以将文件设置为不可修改(immutable).某些文件属性可帮助我们将文件设置不可修改.一旦文件被设置为不可修改,任何用户包括超级用户都不能删除该文件,除非其不可修改的属性被移除.通过查看/etc/mtab文件,很容易找出所有挂载分区的文件系统类型.这个文件的第一列指定了分区设备路径(如/dev/sda5),第三列指定了文件系统类型(如ext3). 接下来让我们看看如何将文…
根据扩展名切分文件名 首先,我们先来看两个例子: file_jpg="sample.jgp" name=${file_jpg%.*} echo File name is : $name 输出结果: File name is sample extension=${file_jpg#*.} echo Extension is : $extension 输出结果:Extension is : jpg 工作原理 在第一个任务中,为了从"名称.扩展名"中取得文件的名字,我们使…
比较与测试 程序中的流程控制是由比较和测试语句来处理的. 我们可以用if,if else 以及逻辑运算符来执行测试,而用一些比较运算符来比较数据项.另外,有一个test 命令也可以用来进行测试.让我们来看看如何使用这些命令. 实战演练: if 条件: if condition; then commands; fi else if 和 else : if condition; then commands; elif condition; then commands else commands fi…