shell分别循环读取csv文件中第二列和第三列内容
时间: 2023-10-06 16:04:43 浏览: 49
可以使用`awk`命令来实现循环读取csv文件中第二列和第三列的内容。假设csv文件名为`file.csv`,可以使用以下命令:
```shell
#!/bin/bash
while IFS=',' read col1 col2 col3
do
echo "Column 2: $col2"
echo "Column 3: $col3"
done < file.csv
```
其中`IFS=','`指定了分隔符为逗号,`read col1 col2 col3`将每行内容分别读取到变量`col1`、`col2`和`col3`中,然后在循环体中使用这些变量来操作第二列和第三列的内容。
相关问题
shell分别读取csv文件中第二列和第三列内容
假设你要读取的csv文件名为`example.csv`,可以使用以下shell命令来分别读取第二列和第三列的内容:
读取第二列:
```
cut -d',' -f2 example.csv
```
读取第三列:
```
cut -d',' -f3 example.csv
```
其中,`-d`表示分隔符,这里使用逗号分隔,`-f`表示要获取的字段,这里分别为第二列和第三列。
C-shell 循环读取csv列
您可以使用awk命令来读取csv文件的指定列,然后使用C-shell中的循环来遍历所有行。
以下是一个示例代码:
```bash
#!/bin/csh
set i = 1
set filename = "test.csv"
# 遍历csv文件的每一行
foreach line ( "`cat $filename`" )
# 使用awk命令获取第二列的值
set value = `echo $line | awk -F ',' '{print $2}'`
echo "Line $i : $value"
set i = `expr $i + 1`
end
```
在此示例中,我们使用`foreach`循环遍历csv文件的每一行。然后,我们使用`awk`命令获取第二列的值,并使用`echo`命令将其打印出来。最后,我们增加计数器变量`i`的值。
请注意,上述代码仅适用于csv文件中包含逗号分隔符的情况。如果您的csv文件使用其他分隔符,请相应地更改`awk`命令中的分隔符选项`-F`。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)