📜  linux批量显示行数——Shell-Bash(1)

📅  最后修改于: 2023-12-03 15:02:45.174000             🧑  作者: Mango

Linux批量显示行数 - Shell-Bash

在Linux中,经常需要查看文件的行数,如果只查看一个文件还好,但如果需要查看多个文件的行数就会很麻烦。这时候可以使用Shell脚本来批量显示文件的行数。

代码实现

以下是一个简单的Shell脚本,可以输入多个文件路径,然后显示每个文件的行数。

#!/bin/bash

# 定义函数 count_lines,用于统计文件行数
count_lines() {
  echo "$1: `wc -l < $1` lines"
}

# 循环处理所有输入的文件路径
for file in "$@"; do
  if [ -f "$file" ]; then
    count_lines "$file"
  else
    echo "Not a file: $file"
  fi
done

该脚本首先定义了一个函数 count_lines,该函数接受一个文件路径参数,并使用 wc -l 命令来统计文件的行数,然后打印出来。

接着使用 for 循环,循环处理所有输入的文件路径。如果当前循环到的文件存在,则调用 count_lines 函数来统计文件行数并输出;否则打印出错误信息。

使用方法

首先将上面的代码保存为一个文件,例如 count_lines.sh,并赋予执行权限(chmod +x count_lines.sh)。

然后在终端中运行该脚本,并输入要统计行数的文件路径,例如:

./count_lines.sh /path/to/file1 /path/to/file2 /path/to/file3

脚本将会逐个输出每个文件的行数。如果输入的文件路径不是一个文件,则会输出错误信息。

总结

通过上面的Shell脚本,可以轻松批量地显示多个文件的行数。当然,该脚本还可以进行更多的扩展,例如可以加上选项参数 -r,表示递归处理目录下所有文件。总之,Shell脚本是Linux系统中非常强大和灵活的一种工具,可以用于各种系统管理和数据处理任务。