linux - 我怎样才能在bash shell脚本中编写这种for循环?

标签 linux bash shell

这是我用c语言编写的代码。但我不知道如何在 bash 脚本中编写这段代码。请问,有人可以帮我吗?

int d,k[2][2];
    printf("enter the numbers:");
    for(i=0;i<2;i++){for(j=0;j<2;j++){
    scanf("%d",&k[i][j]);} //catch user input into 2D array
    }

最佳答案

你可以使用这个;

#!/bin/bash
declare -A array
n_rows=$1
n_columns=$2
for ((i=1;i<=n_rows;i++)) do
    for ((j=1;j<=n_columns;j++)) do
    read -p "Enter number [$i, $j] =  : " number
        array[$i,$j]=$number
    done
done

for ((j=1;j<=n_columns;j++)) do
    for ((i=1;i<=n_rows;i++)) do
        printf "%s " ${array[$i,$j]}
    done
    echo
done

例如:

user@user-host:/tmp$ ./test.sh 2 2
Enter nuber [1, 1] : 1
Enter nuber [1, 2] : 2
Enter nuber [2, 1] : 3
Enter nuber [2, 2] : 4
        1        3
        2        4

关于linux - 我怎样才能在bash shell脚本中编写这种for循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39036596/

相关文章:

linux - ubuntu登录时自动打开终端

shell - 如何在 diff 查看器仍然打开的情况下让cleartool diff 返回到命令行?

Linux LVM 快照脏 block 位图

linux - 使用 sips 调整一长串 jpg 文件的大小

python - 来自 python 的 bash 的 pwd 展开符号链接(symbolic link)

linux - 通过shell将不同文件夹中的文件复制到各自的文件夹中

linux - 有没有办法检索 kubernetes 容器的临时存储使用详细信息?

linux - 如何在bash上编写名为guess_number和RANDOM if语句的脚本?

bash - 如何使用 awk 检测只有一个字段的行并将其与下一行一起打印?

bash - 如何仅在模式所在的行上删除模式前的文本?