源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

linux Shell学习笔记第二天

  • 时间:2021-06-23 01:38 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:linux Shell学习笔记第二天
变量 [list=1] [*]
获取本机主机名
#hostname [/*][*]
获取本系统版本号
#uname -r [/*][*]
获取cpu类型
[/*][*]
获取cpu的工作频率
cat /proc/cpuinfo [/*][*]
获取内存使用情况
#free -m [/*][*]
获取硬盘使用情况
#df [/*][/list] 变量类型及变量操作 [list=1] [*]
[b]本地变量(一般所指) [/b]
本地变量只存在用户当前shell中,当用户退出当前shell或开器一个新的shell,所设置的变量将会不存在 [b]设置变量 [/b] #变量名=变量值 [b]显示变量 [/b] #echo ${变量名} 假设a=1 显示则 echo ${a} [/*][*]
[b]环境变量(用的非常少) [/b]
环境变量用于所有用户进程(经常称为子进程)。登录进程称为父进程。Shell中执行的用户进程均称为子进程。不像本地变量,环境变量可用于所有子进程,这包括编辑器、脚本和应用 环境变量在用户注销时会消失,因此最好在$HOME/.bash_profile(/etc/profile)文件里直接定义 [/*][*]
[b]位置变量(跟脚本和函数有很大的关系) [/b]
位置变量表示$0,$1… …$9 (只有9个)
$0 $1 $2 $3 $4 $5 $6 $7 $8 $9
脚本名字 A B C D E F G H I
$0=当前脚本名称 向脚本中使用位置参数 向系统命令传递参数 [/*][*]
[b]特殊变量 [/b]
$#        传递到脚本的参数列表个数 $* ($@)    以一个单字符串显示所有向脚本传递的参数 $$        脚本运行的当前进程ID号 $?        显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。 [/*][/list] [img]http://files.jb51.net/upload/201012/20101225172709241.png[/img] [img]http://files.jb51.net/upload/201012/20101225172709562.png[/img] [b]引用的必要性 [/b]     [img]http://files.jb51.net/upload/201012/20101225172712339.png[/img] [img]http://files.jb51.net/upload/201012/20101225172712414.png[/img]     变量操作中,脚本执行变量赋值时最容易犯的一个错误就是引用错误     例:echo abc * [img]http://files.jb51.net/upload/201012/20101225172712642.png[/img]         echo abc ‘*' [img]http://files.jb51.net/upload/201012/20101225172712258.png[/img]         echo Hit the star button to exit *             [img]http://files.jb51.net/upload/201012/20101225172712208.png[/img]     [b]引用的方式 [/b] [b]        [/b]双引号(“) (需要排除以下几个)         使用双引号可以引用除$、`、\、字符外的任意字符或字符串         单引号(‘) (比较霸道,任何都可以转成字符)         与双引号类似,不同的是shell会忽略任何引用值。 换句话说,如果屏蔽了其特殊含义,会将引号里的所有字符,都作为一个字符串。 [img]http://files.jb51.net/upload/201012/20101225172712331.png[/img]   反引号(`) (将括号内的当作命令来执行) 用于设置系统命令的输出到变量。 shell将反引号中的内容作为一个系统命令,并执行其内容 [img]http://files.jb51.net/upload/201012/20101225172712708.png[/img]   反斜杠(\) 如果一个字符有特殊含义,反斜线防止shell误解其含义,即屏蔽其特殊含义。 下述字符包含有特殊意义:& * + ^ $ ` ” | ?   [img]http://files.jb51.net/upload/201012/20101225172712422.png[/img] [img]http://files.jb51.net/upload/201012/20101225172712203.png[/img]   脚本实例 [list=1] [*]
Hello.sh
#!/bin/bash #This is the first script echo “Hello,World!” 执行: chmod u+x Hello.sh ./Hello.sh [/*][*]
var.sh
#!/bin/bash echo $1 echo $2 echo $3 echo $4 echo $5 echo $6 echo $7 echo $8 echo $9 echo $10 [img]http://files.jb51.net/upload/201012/20101225172713372.png[/img] [img]http://files.jb51.net/upload/201012/20101225172713563.png[/img] [/*][*]
#!/bin/bash
echo –e “hostname\t `hostname`” echo –e “OScore\t `uname -r`” echo –e “CPUInfo\t `grep “model name” /proc/cpuinfo|awk –F: ‘{print $2}'`” ehco –e “CPUMHz\t `grep “MHz” /proc/cpuinfo | awk –F: ‘{print $2}'`” echo –e “MEMTotal\t `free | awk ‘$1=”Mem:”{print $2}'`” echo –e “DiskInfo\t `df | grep dev |awk ‘{print $1 $2}'`” [img]http://files.jb51.net/upload/201012/20101225172713726.png[/img] 回顾:     脚本的结构与运行     变量的类型及用法         环境变量         本地变量         参数变量         特殊变量 [/*][/list]     变量赋值时的引用方法
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部