(6 respuestas)
Cerrado hace 3 años.
Quiero anteponer un texto contenido en el archivo disclaimer.txt a todos los archivos .m en una carpeta.
Intenté lo siguiente:
text=$(cat ./disclaimer.txt)
for f in ./*.m
do
sed -i '1i $text' $f
done
pero solo antepone una línea vacía.
Respuesta aceptada:
Hay muchas maneras de hacer esto, pero aquí hay una primera punzada rápida:
#!/bin/sh
for file in *.m; do
cat disclaimer.txt $file >> $file.$$
mv $file.$$ $file
done
Concatena el descargo de responsabilidad junto con el archivo original en un nuevo archivo temporal y luego reemplaza el archivo original con el contenido del archivo temporal.