我如何验证我的最后一行文件不为空

问题描述 投票:0回答:1

此代码读取目录或子目录中的所有文件,但我想验证每行的最后一行是否不为空,即我想找到没有空行的文件。

#!/bin/bash

#Diretório onde estão os arquivos
diretorio="$1"

#Verifica se o diretório foi passado como argumento
if [[ -z "$diretorio" ]]; then
  echo "Uso: $0 caminho_do_diretorio"
  exit 1
fi

#Verifica se o caminho é um diretorio
if [[ ! -d "$diretorio" ]]; then
  echo "Erro: '$diretorio' não é um diretório válido!"
  exit 1
fi

#Percorre todos os arquivos no diretório e subdiretórios
find "$diretorio" -type f | while read -r file; do
  #Captura a última linha do arquivo
  last_line=$(tail -n 1 "$file")

  #Verifica se a útlima linha está em branco
  if [[ "$last_line" != "" ]]; then
    echo "O arquivo '$file' NÃO possui uma linha em branco no final."
  fi
done

bash shell file directory
1个回答
0
投票
if [[ -z "$last_line" ]]

此 -z 测试将检查变量是否完全为空。这取决于你如何定义空。

© www.soinside.com 2019 - 2024. All rights reserved.