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

📄 self-source.sh

📁 BASH Shell 编程 经典教程 《高级SHELL脚本编程》中文版
💻 SH
字号:
#!/bin/bash# self-source.sh: 一个脚本"递归"的source自身. # 来自于"Stupid Script Tricks," 卷 II.MAXPASSCNT=100    # 最大的可执行次数. echo -n  "$pass_count  "#  在第一次运行的时候,这句只不过echo出2个空格,#+ 因为$pass_count还没被初始化.let "pass_count += 1"#  假定这个未初始化的变量$pass_count#+ 可以在第一次运行的时候+1.#  这句可以正常工作在Bash和pdksh下, 但是#+ 它依赖于不可移植(并且可能危险)的行为.#  更好的方法是在使用$pass_count之前,先把这个变量初始化为0.while [ "$pass_count" -le $MAXPASSCNT ]do  . $0   # 脚本"source"自身, 而不是调用自己.         # ./$0 (应该能够正常递归)不能在这正常运行. 为什么?done  #  这里发生的动作并不是真正的递归,#+ 因为脚本成功的展开了自己,换句话说,#+ 在每次循环的过程中#+ 在每个'source'行(第20行)上#  都产生了新的代码.##  当然, 脚本会把每个新'source'进来文件的"#!"行#+ 都解释成注释, 而不会把它看成是一个新的脚本.echoexit 0   # 最终的效果就是从1数到100.         # 真是让人印象深刻.# 练习:# -----# 使用这个小技巧编写一些真正能够干些事情的脚本. 

⌨️ 快捷键说明

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