bash的位置变量和特殊变量

bash编程的知识点:位置变量和特殊变量

位置参数变量:
        scirpt1.sh arg1 arg2 ...
        $0         $1   $2   ...  ${10} ...
        $0: 即为文件本身
       
     脚本注释:除第一行的shebang之外,任何以#开头的行都表示为注释信息,会被解释器忽略;
         # information

特殊变量:
         $#:位置参数变量的个数,
         [email protected]:位置参数列表
         $*:位置参数列表
       
    练习:写一个脚本,能接受一个参数,此参数为系统上的某文本文件路径;
        (1) 显示此文件的总行数;
            #!/bin/bash
            filedir=$1
            lines=`wc -l $filedir |cut -d ‘ ‘ -f 1`
            echo "$filedir lines is :$lines"

时间: 2024-10-26 13:46:25

bash的位置变量和特殊变量的相关文章

bash的重要特性:变量

在介绍内容之前,我解释下排版问题, 第一分割线是基本介绍 第二分割线是细节和扩展内容 第三分割线是对细节内容的详细讲解以及实例 前面粗略介绍的后面会有详解 bash的重要特性:变量 bash变量的类别: 本地变量:只对当前shell进程有效的变量:对其他shell进程无效,包当前shell进程的子进程: 环境变量:对当前shell进程及其子shell有效,对其他的shell进程无效 局部变量:对shell脚本中某代码片段有效,通常用于函数本地 位置变量:使用bash 脚本时,命令后面跟着的参数位

Bash 是如何从环境变量中导入函数的

在上文中曾说到: 所谓的环境变量的真实面目其实就是个任意字符串 Bash 在启动时会将 environ 数组中包含 = 号的字符串导入成为自己的变量 Bash 在启动外部命令时会将自己内部标记为环境变量的变量重组成字符串数组赋值给 environ 本文中继续深入讲三点: environ 数组中可能存在 = 左边名字相同的元素,也就是同名的环境变量,Bash 是怎么导入的? Bash 还可以从环境变量中导入函数,甚至同时导入两个同名的变量和函数 Bash 还可以同时导出两个同名的变量和函数 如果有

bash shell中的环境变量

环境变量--bash shell使用环境变量来存储系统相关数据,并允许将数据存储在内存中. 环境变量分为:全局环境变量 本地环境变量 目录 全局环境变量 本地环境变量 设置全局环境变量 删除环境变量 PATH全局环境变量 设置系统环境变量的相关文件(登录.非登录.交互.非交互shell) 一.全局环境变量 在当前shell和子shell都可见 可以用printenv命令查看全局环境变量,大写表示是系统环境变量,小写表示是普通用户的环境变量 这是bash shell的一个标准约定,不是必须的,因此

BASH系列(2)——变量

注意: 1.脚本在执行时,会在当前shell下启动一个子shell进程. 2.命令行中启动的脚本会继承当前shell的环境变量. 3.系统自动启动的脚本(非命令行启动)就需要自我定义各种所需要的环境变量. 环境变量:声明环境变量的格式export VARNAME=VALUE  作用域:当前shell进程及其子进程. 本地变量:声明本地变量的格式VARNAME=VALUE. 作用域:对整个脚本进程或整个bash进程有效. 局部变量:声明局部链路的格式local VARNAME=VALUE. 作用域

bash中通过设置PS1变量改变提示符颜色

参考 <Prompt Magic> ubuntu初始时bash提示符的颜色同程序输出的颜色相同,当大量有输出时,找到输出信息开始的地方往往很费劲.如果把提示符的颜色变成更为醒目的颜色,那么就很容易定位输出信息开始处.bash中想要改变提示符颜色可以通过PS1变量的值来设置,如果将其放入用户对应目录下的.bashrc文件中,则用户打开bash时自动更改颜色.这里,我将提示符改成绿色:    PS1="\[\e[32m\]\[email protected]\h:\w\$ \[\e[0m

Linux进阶之bash编程四(内置变量)

一:基础回顾 1:文件清空 [[email protected] test]$ >log.txt 2:正常和错误重定向输出 //正常和错误都追加输出到同样地方 [[email protected] test]$ ifconfig &>>log.1 //正常输出重定向[[email protected] test]$ ifconfig >log //错误输出重定向[[email protected] test]$ ifconfig 2>log.23:命令执行控制 //休

Bash中${}的用法和变量的间接引用

在bash中${}用于设置变量默认值和字符串取值切片以及变量的间接引用,详细用法如下图,在Centos6下字符串取子${STR:POSITON:LENGTH},LENGTH为负数会报错. 1.${VAR},取出变量VAR值 [[email protected] ~]# a=hjks [[email protected] ~]# echo ${a} hjks 2.${VAR:-DEFAULT},VAR没有定义或者为空则输出$DEFAULT的值(VAR不变) [[email protected] ~

bash仅仅读的环境变量

环境变量名 变量的用途 $0 程序的名字 $1~$9 命令參数1~9的值 $* 全部命令行參数的值 [email protected] 全部命令行參数的值.假设[email protected]被""包含.即"[email protected]",这相当于当中的每个參数的值被""包含.相反,假设$*被""包含.即"$*".这就相当于全部的參数值作为一个串被""包含.这就是[email p

bash可改动的环境变量

环境变量名 变量的用途 CDPATH 包括cd命令要逐个查找的路径,cd命令在这些路径下查找作为參数传递给它的文件夹名.假设CDPATH没有设置,cd命令则查找当前文件夹 EDITOR 用户在程序中使用的默认编辑器,比如E-mail程序elm ENV Linux查找配置文件的路径 HOME 当第一次登录时,主文件夹的名字 HISTFILE 存放历史记录的文件的路径名 PATH 搜索命令或者程序的全部文件夹 PS1 在命令行中出现的shell提示符 PWD 当前工作文件夹的名字 TERM 用户使用