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

📄 avoid-subshell.sh

📁 BASH Shell 编程 经典教程 《高级SHELL脚本编程》中文版
💻 SH
字号:
#!/bin/bash# avoid-subshell.sh# 由Matthew Walker所提出的建议. Lines=0echocat myfile.txt | while read line;  #  (译者注: 管道会产生子shell)                 do {                   echo $line                   (( Lines++ ));  #  增加这个变量的值                                   #+ 但是外部循环却不能访问.                                    #  子shell问题.                  }                 doneecho "Number of lines read = $Lines"     # 0                                         # 错误!echo "------------------------"exec 3<> myfile.txtwhile read line <&3do {  echo "$line"  (( Lines++ ));                   #  增加这个变量的值                                   #+ 现在外部循环就可以访问了.                                    #  没有子shell, 现在就没问题了. }doneexec 3>&-echo "Number of lines read = $Lines"     # 8echoexit 0# 下边这些行是这个脚本的结果, 脚本是不会走到这里的. $ cat myfile.txtLine 1.Line 2.Line 3.Line 4.Line 5.Line 6.Line 7.Line 8.

⌨️ 快捷键说明

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