read 通过while循环同时遍历两个txt 作为两个变量 传递到第三个txt中指定位置作为变量 用shell脚本实现
时间: 2024-04-15 21:31:45 浏览: 94
如果您希望使用 Shell 脚本来实现同时遍历两个文本文件,并将它们的内容作为变量传递到第三个文本文件中特定位置,可以尝试以下示例脚本:
```bash
#!/bin/bash
file1="file1.txt"
file2="file2.txt"
output_file="output.txt"
# 检查输出文件是否存在,存在则删除
if [ -f "$output_file" ]; then
rm "$output_file"
fi
# 逐行遍历两个文件,并将内容传递到输出文件中指定位置
while IFS= read -r line1 && IFS= read -r line2 <&3; do
# 在第三个文件中指定位置写入变量
echo "Variable 1: $line1" >> "$output_file"
echo "Variable 2: $line2" >> "$output_file"
done < "$file1" 3< "$file2"
```
在这个脚本中,我们使用 `while` 循环同时从两个输入文件 (`file1.txt` 和 `file2.txt`) 中读取一行内容,并将其作为变量传递到输出文件 (`output.txt`) 的指定位置。首先,我们检查输出文件是否存在,如果存在则删除。然后,使用 `read` 命令从两个文件中分别读取一行内容,并将其存储在 `line1` 和 `line2` 变量中。接下来,我们使用 `echo` 命令将变量的值写入输出文件的指定位置。
您可以将以上代码保存为一个 Shell 脚本文件 (例如 `script.sh`),然后在终端中运行 `bash script.sh` 来执行脚本。请确保脚本文件具有执行权限 (`chmod +x script.sh`)。希望对您有所帮助!
阅读全文