温馨提示×

linux逐行读取文件怎么实现

小亿
170
2023-12-01 15:33:39
栏目: 智能运维

在Linux中,可以使用C语言或脚本语言来逐行读取文件。以下是两种常用的方式:

  1. C语言:可以使用标准C库中的fgets函数来逐行读取文件。
#include <stdio.h>

int main() {
    FILE* file = fopen("filename.txt", "r");
    if (file == NULL) {
        printf("无法打开文件\n");
        return 1;
    }

    char line[256];
    while (fgets(line, sizeof(line), file) != NULL) {
        printf("%s", line);
    }

    fclose(file);
    return 0;
}

上述代码中,首先使用fopen函数打开文件,然后使用fgets函数逐行读取文件内容,每次读取一行,并将其打印出来。最后使用fclose函数关闭文件。

  1. Shell脚本:可以使用while循环结合read命令来逐行读取文件。
#!/bin/bash

while IFS= read -r line; do
    echo "$line"
done < "filename.txt"

上述代码中,while循环通过read命令读取一行,并将其存储到line变量中,然后使用echo命令打印出来。最后使用重定向符号将文件内容传递给循环。

无论是C语言还是Shell脚本,都可以实现逐行读取文件的功能,具体选择哪种方式取决于你的需求和编程环境。

1