Bash 正在尝试打印两个文件中的值

Bash 正在尝试打印两个文件中的值,bash,shell,Bash,Shell,这个外壳: for i in $(cat file1.txt) and j in $(cat File2.txt) do echo " portname=$i domainid=$j " done 没有得到正确的输出 您可以建议如何使用文件描述符重定向来使用它吗 while read -r i && read -r j <&3 do echo " portname=$i domainid=$j "; done <

这个外壳:

for i in $(cat file1.txt) and j in $(cat File2.txt)       
do
    echo " portname=$i domainid=$j "       
done
没有得到正确的输出


您可以建议如何使用文件描述符重定向来使用它吗

while read -r i && read -r j <&3
do
    echo " portname=$i domainid=$j ";
done < file1.txt 3<File2.txt

使用文件描述符重定向:

while read -r i && read -r j <&3
do
    echo " portname=$i domainid=$j ";
done < file1.txt 3<File2.txt
使用“粘贴”命令:

paste file1.txt File2.txt |
while read -r i j
do
    echo " portname=$i domainid=$j "
done
使用“粘贴”命令:

paste file1.txt File2.txt |
while read -r i j
do
    echo " portname=$i domainid=$j "
done

什么是输入,电流输出,你期望什么?另请参见.Input File1:port1 PORT2 FILE2 1 2 Output:portname=port1 domainid=portname=PORT2 domainid=portname=和domainid=portname=j domainid=portname=in domainid=portname=1 domainid=portname=2 domainid=有一个允许您更新问题的链接。不要在注释中添加有用的信息。将for循环与2一起使用可获得笛卡尔产品输入、当前输出和预期结果是什么?另请参见.Input File1:port1 PORT2 FILE2 1 2 Output:portname=port1 domainid=portname=PORT2 domainid=portname=和domainid=portname=j domainid=portname=in domainid=portname=1 domainid=portname=2 domainid=有一个允许您更新问题的链接。不要在注释中添加有用的信息。在中使用for循环和2可以获得笛卡尔产品。您可以解释3在第一行和最后一行代表什么吗?3是自定义文件描述符0是stdin 1is stdout 2is stderr您可以解释3在第一行和最后一行代表什么吗?3是自定义文件描述符0是stdin 1is stdout 2is标准错误