perl和shell的语法不同之处---打卡19---ing
2014-07-06 12:37
218 查看
整个数组输出
echo "${a[@]}"是打印全数组
perl
print "@a"
数组长度
shell
cnt=${#a[@]}
perl
$d=@a
or
$#a 数组最后一个索引,即长度-1
数组,string长度的perl和shell的不同获取方法
perl
$a1=@a;
$b1=length($str)
shell
字符串长度
${#string}
expr length $string
数组和string的转化
shell
str=`ls $path |egrep '(^s)'`
a=$str 这是是将string 整体赋予数组的第一个元素
str=`ls *`
set -A a ${str} 这个是将整个数组分别赋予数组的各个元素
数组转string呢
b="${a[*]}"
perl的数组和string的转化呢
split()/joint()
string处理
shell用模式识别
perl用substr or 正则
shell,perl的加法,数值比较
perl $i++
shell expr ,(()),typeset -i i=0
shell是以string为基础的语言,数学运算要特殊处理
i=`expr $i+1`
((i=i+1)) 注意(())里面没有$
perl不需要
perl,shell 字符串和数值比较
都是分开
perl
eq 是string 比较 ,==是数值比较
shell
-eq 是数值比较,== 是string比较
shell语法 判断,循环,分支 if ,while/for , switch
[] 中间判断用.表示test
do表示范围
done
shell没有for()这种用法。
perl
()中间判断
全是{}表示范围
文件读取;
perl
$a=<$fd>;按行读取
@a=<$fd>;全部读取
shell中没有open。所以没有句柄
只能用while read但是只能一行一行地读
while read line
do
prnt $line
done<1.txt
perl
while (<>) {
print $_;
}
钻石操作符
shell 没有钻石操作符.<>极少见,>写,<读,用于重定向
perl用钻石操作符读取文件
shell没有pop,push,shift,unshift
字符串连接
shell 字符串连接不用,直接写,or用""整体括起来
cwd=$cwd/email.txt
perl 需要用.连接
$cwd=$cwd.email.txt
perl退出程序
exit 1
退出子函数
return 1
shell 退出程序和子函数都是
return 1和exit 1 均可
perl
用chomp控制回车
shell
printf可以实现不加\n
print ,echo 自动加
echo "${a[@]}"是打印全数组
perl
print "@a"
数组长度
shell
cnt=${#a[@]}
perl
$d=@a
or
$#a 数组最后一个索引,即长度-1
数组,string长度的perl和shell的不同获取方法
perl
$a1=@a;
$b1=length($str)
shell
字符串长度
${#string}
expr length $string
数组和string的转化
shell
str=`ls $path |egrep '(^s)'`
a=$str 这是是将string 整体赋予数组的第一个元素
str=`ls *`
set -A a ${str} 这个是将整个数组分别赋予数组的各个元素
数组转string呢
b="${a[*]}"
perl的数组和string的转化呢
split()/joint()
string处理
shell用模式识别
perl用substr or 正则
shell,perl的加法,数值比较
perl $i++
shell expr ,(()),typeset -i i=0
shell是以string为基础的语言,数学运算要特殊处理
i=`expr $i+1`
((i=i+1)) 注意(())里面没有$
perl不需要
perl,shell 字符串和数值比较
都是分开
perl
eq 是string 比较 ,==是数值比较
shell
-eq 是数值比较,== 是string比较
shell语法 判断,循环,分支 if ,while/for , switch
[] 中间判断用.表示test
do表示范围
done
shell没有for()这种用法。
perl
()中间判断
全是{}表示范围
文件读取;
perl
$a=<$fd>;按行读取
@a=<$fd>;全部读取
shell中没有open。所以没有句柄
只能用while read但是只能一行一行地读
while read line
do
prnt $line
done<1.txt
perl
while (<>) {
print $_;
}
钻石操作符
shell 没有钻石操作符.<>极少见,>写,<读,用于重定向
perl用钻石操作符读取文件
shell没有pop,push,shift,unshift
字符串连接
shell 字符串连接不用,直接写,or用""整体括起来
cwd=$cwd/email.txt
perl 需要用.连接
$cwd=$cwd.email.txt
perl退出程序
exit 1
退出子函数
return 1
shell 退出程序和子函数都是
return 1和exit 1 均可
perl
用chomp控制回车
shell
printf可以实现不加\n
print ,echo 自动加
相关文章推荐
- perl基本语言语法(与java,c#不同的地方积累)
- perl基本语言语法(与java,c#不同的地方积累)
- linux的shell脚本语法与C语言不同之一
- 初学shell脚本--shell语法使用
- Shell 学习19 - Shell until 循环
- BASH命令和SHELL脚本总结(19)递归地拷贝目录结构
- 【转】Shell基本语法
- Linux中shell编程需要避免的坑之shell语法篇(二)
- Shell与其命令语法分析
- Shell中的grep、awk和sed的常用命令和语法
- 【shell】正则表达式语法
- Perl语法速查
- 19Java语法回顾之反射
- 数据的随机查询在不同数据库中的不同语法
- java正则表达式的基本语法以及不同环境的表单验证
- shell脚本编程(二)——常用语法(续)
- Linux shell script 的语法汇总
- 通过shell例子来学习循环结构的语法 推荐
- shell注意语法
- shell语法中test命令详解