Bash shell基础

bash 几个常用的代码

#########最简单的bash

#! /bin/bash    #解析器路径
env                     #查看环境

##########看运行时间

#!/bin/bash
#文件名: time.sh
start=$(date +%s)
#commands;
#statements;
sleep 10;               #command
end=$(date +%s)
difference=$(( end - start))
echo Time taken to execute $0 is $difference seconds.

########## while循环

#!/bin/bash
declare -i i=1
declare -i sum=0
while ((i<=10))
do
      let sum+=i
      let ++i
done
echo $sum

########## 关于中断光标

#!/bin/bash
#文件名: sleep.sh
echo -n Count:
# tput sc存储光标位置
tput sc
count=0;
while true;
do
    if [ $count -lt 40 ];
    then
        let count++;
        sleep 1;
        # 恢复光标位置的命令是tput rc
        tput rc
        # tput ed清除从当前光标位置到行尾之间的所有内容
        tput ed
        echo -n $count;
    else exit 0;
    fi
done

############shell判断

#! /bin/bash
declare -i num=0
if [ $num -lt 0 ] #一定要注意在[或]与操作数之间有一个空格
then
    echo "<";
elif [ $num -eq 0 ]
then
    echo "==";
else
    echo ">";
fi
#   [ $var1 -ne 0 -a $var2 -gt 2 ] #使用逻辑与-a
#   [ $var1 -ne 0 -o var2 -gt 2 ] #逻辑或 -o

############shell Debug

#!/bin/bash
#文件名: debug.sh
for i in {1..6};
do
    set -x
    echo $i
    set +x
done
echo "Script executed"

############break

#!/bin/bash
while :
do
    echo -n "Input a number between 1 to 5: "
    read aNum
    case $aNum in
        1|2|3|4|5) echo "Your number is $aNum!"
                    ;;
        *) echo "You do not select a number between 1 to 5, game is over!"
            break
            ;;
    esac
done

##############case

#! /bin/bash
echo ‘Input a number between 1 to 4‘
echo ‘Your number is:\c‘
read aNum
case $aNum in
     1)  echo ‘You select 1‘
             ;;
     2)  echo ‘You select 2‘
             ;;
     3)  echo ‘You select 3‘
             ;;
     4)  echo ‘You select 4‘
             ;;
     *)  echo ‘You do not select a number between 1 to 4‘
             ;;
esac

#########function

function fname()
{
    echo $1, $2; #访问参数1和参数2
    echo "[email protected]";#以列表的方式一次性打印所有参数
    echo "$*"; #类似于[email protected],但是参数被作为单个实体
    return 0; #返回值
}

fname arg1 arg2 arg3

export -f fname
时间: 2024-10-27 19:10:50

Bash shell基础的相关文章

bash shell基础特性之三(数组)

bash shell基础特性之三(数组) 一.数组定义 数组指连续的多个独立内存空间,每个内存空间相当于一个变量. bash shell只支持一维数组,但参数个数没有限制. 数组元素:数组名+索引(从0开始编号) 声明数组:declare -a ARRAR_NAME(其实不用声明,按数组方式直接赋值给变量即可,BASH就知道那是数组) 关联数组:declare -A ARRAY_NAME 数组元素的赋值:一次赋值全部元素.指定索引进行赋值.一次只赋值一个元素 (1) array=(var1 va

bash shell基础编程

一. BASH Shell编程基础 1. BASH Shell的可执行文件 (1) 内部命令 (2) 外部命令 (3) 脚本文件 2. BASH Shell的命令解释过程 在path指定范围内查找(外部命令) ...... 3. BASH Shell的变量 (1) 变量的分类 -按作用域分 a. 局部变量 b. 全局变量 -按用途分 a. 自定义变量 b. 系统环境变量(path) c. 特殊变量 (2) 定义和引用变量 -定义变量: 即用即定义.不用加$ 注: 可用export命令将变量输出为

bash shell基础语法

本文主要是基础的基础,希望对大家有所帮助 一.Shell基本类型的变量: (1)Shell定义的环境变量: Shell在开始执行时就已经定义了一些和系统的工作环境有关的变量,用户还可以重新定义这些变量,常用的Shell环境变量有: HOME 用于保存注册目录的完全路径名. PATH 用于保存用冒号分隔的目录路径名,Shell将按PATH变量中给出的顺序搜索这些目录,找到的第一个与命令名称一致的可执行文件将被执行. TERM 终端的类型. UID 当前用户的识别字,取值是由数位构成的字串. PWD

Bash shell 基础特性 理论+案例详解

1.命令历史:history 环境变量: HISTFILE:命令历史记录的条数 HISTSIZE:~/.bash.history HISTFILESIZE:命令历史文件记录历史的条数 history:默认显示10条历史纪录 history -n:显示后n条历史记录 history -d n:删除第n条历史纪录 history -c:删除所有历史记录 history -a:手动追加当前会话缓冲区中的历史命令至历史文件中 !n:重复执行第n条命令 !!:重复执行上一条命令 !加命令的开头几个字母:重

Bash shell 基础命令

1.       Shell启动 Gun bash shell为用户提供交互式访问,登录时系统依赖于用户账户的配置,在/etc/passwd 文件中存放所有系统用户账户列表及基本配置,以下为条目样本: root:x:0:0:root:/root:/bin/bash 每个条目共有七个字段,分别以冒号隔开,代表的含义依次为"用户名:密码:UID(用户ID号):GID(用户主组ID号):GECOS(用户详细描述信息):用户家目录:用户默认shell程序".当用户登录以后将会启动默认shell

Linux操作系统基础解析之(七)——Bash(Shell)基础知识(1)

在日常交际英语中,Shell可以翻译成壳,大多指能够对内部核心起到保护作用的一种装置或结构.在计算机科学中,shell其实是指:为操作者提供的.能够通过系统调用或库调用使用整个计算机资源的访问接口. 它既是一种命令解析器又是一种程序设计语言.作为命令解析器,它可以解释和执行用户输入的命令,也可以自动地解释和执行预先编写好并保存在某个文本文件中的一系列的命令:作为程序设计语言,shell特别定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和条件分支,让我们可以像使用高级语言

Linux操作系统基础解析之(七)——Bash(Shell)基础知识(3)

五.注释 在非交互shell中或交互式shell中,内置命令shopt的选项interactive_comments被开启.以"#"开始的词使得这个词所在这一行上所有其他的剩余字符都被忽略(或称注释).交互式shell不用开启interactive_comments选项也不支持注释.interactive_comments选项在交互式shell中是默认启用的.注释是编写程序时,写程序的人给一个语句.程序段.函数等的解释或提示,能提高程序代码的可读性,以便于以后的参考.修改.后来,在应用

Linux操作系统基础解析之(七)——Bash(Shell)基础知识(5)

十一.函数  shell函数就是按照上面SHELL GRAMMAR的描述定义的保存着一系列等待稍后执行的命令.当shell函数名被当做一个简单命令名使用时,被这个函数名关联的一系列命令都被执行.函数在当前shell的上下文环境中被执行:不会创建新的进程来解释它们(这与shell脚本的执行形成了对比).当执行函数时,函数的参数成为执行过程中的位置参数.特殊参数#被更新以反映这个变化.特殊参数0不会改变.函数执行时,FUNCNAME变量的第一个元素被设置为函数的名称.  shell执行环境的所有其他

Linux操作系统基础解析之(七)——Bash(Shell)基础知识(2)

三.命令历史bash从Korn Shell和C Shell中吸收了很多的精华,其中之一正式为已经执行过的命令保存一个缓存副本的特性,我们称之为"命令历史"功能.我们为什么要使用命令历史功能呢?每个用户登录成功之后,尤其是使用bash这样的文件接口登录之后,所有的操作都是由执行命令来实现的,那么就不可避免的会出现重复执行某个命令的情况,如果每个命令都依靠键入的方式来输入的话,固然没有问题,但是效率不高而且也是浪费时间的"可耻"行为,命令历史刚好给我们提供了解决这种问题

bash shell基础之一

bash 变量类型: 环境变量 本地变量(局部变量) 位置变量 特殊变量 本地变量:只在当前进程(shell)中有效. bash:直接使用,不必声明:Name = jerry; 变量替换:如何引用变量 :${变量}.花括号大部分时间可以省略,如上例,想要使用变量中的        值,echo$Name. 例外情况:双引号(若引用):例如 Name = pig,想要输出there are some pigs就需要这样写: echo "there are some ${pig}s" 单引