⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 copyarray.sh

📁 BASH Shell 编程 经典教程 《高级SHELL脚本编程》中文版
💻 SH
字号:
#! /bin/bash# CopyArray.sh## 这个脚本由Michael Zick所编写. # 已通过作者授权, 可以在本书中使用. #  如何"通过名字传值&通过名字返回"(译者注: 这里可以理解为C中的"数组指针", 或C++中的"数组引用")#+ 或者"建立自己的赋值语句". CpArray_Mac() {# 建立赋值命令    echo -n 'eval '    echo -n "$2"                    # 目的参数名    echo -n '=( ${'    echo -n "$1"                    # 原参数名    echo -n '[@]} )'# 上边这些语句会构成一条命令. # 这仅仅是形式上的问题. }declare -f CopyArray                # 函数"指针"CopyArray=CpArray_Mac               # 构造语句Hype(){# 需要连接的数组名为$1. # (把这个数组与字符串"Really Rocks"结合起来, 形成一个新数组.)# 并将结果从数组$2中返回.     local -a TMP    local -a hype=( Really Rocks )    $($CopyArray $1 TMP)    TMP=( ${TMP[@]} ${hype[@]} )    $($CopyArray TMP $2)}declare -a before=( Advanced Bash Scripting )declare -a afterecho "Array Before = ${before[@]}"Hype before afterecho "Array After = ${after[@]}"# 连接的太多了? echo "What ${after[@]:3:2}?"declare -a modest=( ${after[@]:2:1} ${after[@]:3:2} )#                    ----       子串提取       ----echo "Array Modest = ${modest[@]}"# 'before'发生了什么变化么? echo "Array Before = ${before[@]}"exit 0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -