码迷,mamicode.com
首页 > 系统相关 > 详细

shell基础1

时间:2018-12-03 00:51:09      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:awk   declare   最大   (())   .net   小数   字符   单行   .sh   

shell的特殊位置变量
$0 ? ? ??相当于C语言main函数的argv[0]
$1 $2 $3....位置参数,相当于argv[1],argv[2],argv[3]
$# ? ? ? 脚本运行时携带的参数个数
$@ ? ? ?表示参数列表(可以用做for的遍历)
$* ? ? ? ?表示参数列表
$? ? ? ? 上一条命令的exit status(0为真 ?非0为假)
$$ ? ? ? 当前进程号
IFS环境变量定义了shell用作字段分隔符的一系列字符

取变量或者字符串的长度
echo $a|wc -L 利用wc的-L参数来获取字符串的长度 对多行文件来说,表示打印最长行的长度 对单行字符串而言,表示当前行字符串的长度
echo ${#a}
awk ‘{print length($0)}‘
awk -F"" ‘{print NF}‘
echo -n "" | wc -c
-c参数: 统计字符的个数
-n参数: 去除"\n"换行符,不去除的话,默认带换行符,字符个数就成了7
expr length "$str"

点执行与source sh bash执行脚本区别
https://www.jb51.net/article/128918.htm
结论一: ./.sh的执行方式等价于sh ./.sh或者bash ./*.sh,此三种执行脚本的方式都是重新启动一个子shell,在子shell中执行此脚本。

结论二: .source ./.sh和 . ./.sh的执行方式是等价的,即两种执行方式都是在当前shell进程中执行此脚本,而不是重新启动一个shell 而在子shell进程中执行此脚本。

如何进行整数的计算
(()) 用于整数之间常用的运算符,效率高
let :用于整数运算,类似于(())
expr :用于整数运算,但是还有其他功能
bc :Linux下的一个计算程序,适合整数及小数运算
$[] :用于整数运算
awk:awk既可以整数运算,也可以小数运算
declare: 定义变量值和属性,-i参数可以用于定义×××变量,做运算

单双引号与不加引号的区别
单引号与双引号的最大不同在于双引号仍然可以保有变数的内容,但单引号内仅能是一般字元,而不会有特殊符号

shell基础1

标签:awk   declare   最大   (())   .net   小数   字符   单行   .sh   

原文地址:http://blog.51cto.com/aklaus/2325027

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!