2011-07-23 16 views

Respuesta

3

Bueno, no es exactamente el método que está buscando, pero que sólo podría incluir el nombre del archivo en las cabeceras YAML para el archivo. Probablemente sea una mala elección para los archivos que moverá y modificará, pero dado que no parece haber una gran cantidad de respuestas fluyendo, tal vez sea lo suficientemente bueno.

1

Creo que lo tengo. Aquí estoy comprobando si un archivo tiene una línea que contiene "Nombre de archivo:". Si no, lo coloca en la segunda línea, con la variable del nombre del archivo.

#!/bin/bash 
for file in $(ls *.md) 
do 
if grep -Fq "filename: " $file 
then 
    # code if not found 
    echo "File: $file already processed" 
else 
    # code if found 
    echo "Adding the line on file: $file" 
    awk -v n=2 -v s="filename: $file" 'NR == n {print s} {print}' $file > tmp.txt 
    mv tmp.txt $file 
fi 

hecho

Cuestiones relacionadas