shell learning note

shell learning note

MAIN="/usr/local/"									# 变量大写
STATUS="$MAIN/status"								# 美元符加字符串是引用变量值,而美元符加数字表示命令行参数
echo "some words" >>$STATUS/log.log
echo "test.sh start at `date ‘+%m/%d %H:%M:%S‘`" >>$STATUS/log.log
cat $FILE | grep -v "#" >$OTHERFILE.list		# -v剔除#开头的行
year=`date +%Y echo $LINE | awk -F "+" ‘{print $var}‘`							# -F以“+”为分隔符

if [-s "${path}/test.list"]			# 如果文件存在即为非0时为真
if [ -n "$var1" -o -n "var2"]		#-n 当字符串的长度大于0时为真(串非空) -a,-o,! 逻辑与,或,非
# ${args1}_$args2 加上{}是为了更清晰地说明args是变量而不是args_,当遇到多个参数一起时不会混淆变量
then
	for LINE in `cat $file`
	do
	# substr(s,p,n) 返回字符串s中从p开始长度为n的后缀部分 exam:substr($string,0,length(1)) result:s
		filename = `echo $LINE | awk -F "+" ‘{print substr($1,0,1)}‘`
		expr $value \* $times
		if ["$flag" -eq "1"]
		then
			checkFlag=`checkSchedule "${Args1}" "$Args2"` # checkFlag等于checkSchedule函数返回值,$Args1是传入参数
			func "$var1" "$var2"		#传入var1,2给函数func()
		fi
	done
fi

func()
{
	var1=$1
	var2=$2
}
时间: 2024-10-20 08:25:28

shell learning note的相关文章

Kali linux learning note

from:http://blog.sina.com.cn/s/blog_40983e5e0101dhz0.html 因为kali linux基于debian 7,当然要把这台Acer 4736z原有的debian 7删掉装kali啦,哈哈,这下不必为了BT5装虚拟机了,对于本子里60G的SSD来说还是好事一桩.要把kali当做桌面使用,就必须给kali添加一些软件,修改一些设置才好用,下面记录一下备忘,随时更新. 安装方法,官方文档,硬盘安装Kali Linux 把apt源设为官方提供的国内镜像

Learning Note: SQL Server VS Oracle–Database architecture

http://www.sqlpanda.com/2013/07/learning-note-sql-server-vs.html This is my learning note base on the "SQL Server Essentials for Oracle DBAs Jump Start" . DATA BLOCK/EXTEND AND SEGMENT image: http://lh5.ggpht.com/-FxEKn7CCNd0/UetkOxZ6igI/AAAAAAA

2014/09/30 Learning Note

Vbird Linux: Vim Learning: http://linux.vbird.org/linux_basic/0310vi.php Bash Shell: http://linux.vbird.org/linux_basic/0320bash.php Key words of reminder: /etc/passwd history alias [Tab] Wildcard type ---builtin commands \[Enter] echo $variable

Python 基础 - Day 5 Learning Note - 模块 之 介绍篇

定义 模块(module)支持从逻辑上组织Python代码,本质就是.py结尾的python文件(e.g.文件名:test.py; 模块名:test),目的是实现某项功能.将其他模块属性附加到你的模块中的操作叫导入(import). 模块分为三类:标准库.开源模块(open source module)和自定义模块. 包(package)是一个有层次的文件目录结构, 定义了一个由模块和子包组成的python应用程序执行环境.和模块及类一样,也使用句点属性标识来访问他们的元素.使用标准的impor

Shell study note

5.1 printenv view Global variables bash new shell set Global variables and local variables export test Local → Global, so it can be accessed in both subshell and main shell. unset test Delete a variable, no $ needed. PATH=$PATH:... append PATH, no “”

[Angular2] @Ngrx/store and @Ngrx/effects learning note

Just sharing the learning experience related to @ngrx/store and @ngrx/effects. In my personal opinion, I fell there are tow different types of coding style by using @ngrx/store only @ngrx/store + @ngrx/effects So How we do with only ngrx/store? Contr

Python 基础 - Day 5 Learning Note - 模块 之 标准库:time (1)

时间的表示方式 1. 间戳 timestamp:  从1970年1月1日 00:00:00 开始按秒计算的偏移量,以float数据类型呈现. 返回时间戳的函数有: time() , clock() 等. 2. sruct_time 元祖方式: 返回struct_time元祖的函数包括 gmtime(), localtime(), strptim(). 返回的元祖包括以下9个元素. 索引 INDEX 属性 ATTRIBUTE 值 VALUES 0 tm_year  比如2011 1 tm_mon

Python 基础 - Day 4 Learning Note - 模块 - Json & Pickle

Json和Pickle的区别 在python的序列化的两个模块中,json模块是用于字符串和python数据类型间进行转换:另一个pickle模块,是用于python特有的类型(所有数据类型和python的数据类型间进行转换.json是可以在不同语言之间交换数据的,而pickle只在python之间使用.json只能序列化最基本的数据类型,json只能把常用的数据类型序列化(列表.字典.列表.字符串.数字.),比如日期格式.类对象!josn就不行了.而pickle可以序列化所有的数据类型,包括类

Python 基础 - Day 4 Learning Note - Generator 生成器

列表生成器/列表解析 list comprehension 简单灵活地创建列表,通常和lambda(), map(), filter() 一起使用 通过列表生成式, 直接创建列表.但是,收到内容限制,列表容量肯定是有限的.而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问几个元素,那其他的就白占空间.列表生成器能够一边循环一边计算,大大节省大量的空间.是生成器的一种. 只有调用,才能生成. 不支持切片操作,只能通过__next()___一个个取数字. 基本语法