¿Cómo insertaría un mensaje de copyright en la parte superior de cada archivo?Inserte el mensaje de copyright en varios archivos
8
A
Respuesta
12
#!/bin/bash
for file in *; do
echo "Copyright" > tempfile;
cat $file >> tempfile;
mv tempfile $file;
done
solución recursiva (encuentra todas .txt
archivos en todos los subdirectorios):
#!/bin/bash
for file in $(find . -type f -name \*.txt); do
echo "Copyright" > copyright-file.txt;
echo "" >> copyright-file.txt;
cat $file >> copyright-file.txt;
mv copyright-file.txt $file;
done
Tenga cuidado; si existen espacios en los nombres de los archivos, es posible que tenga un comportamiento inesperado.
0
Usted puede usar este script sencillo
#!/bin/bash
# Usage: script.sh file
cat copyright.tpl $1 > tmp
mv $1 $1.tmp # optional
mv tmp $1
lista de archivos puede ser gestionado a través de utilidad Buscar
5
sed
echo "Copyright" > tempfile
sed -i.bak "1i $(<tempfile)" file*
o concha
#!/bin/bash
shopt -s nullglob
for file in *; do
if [ -f "$file" ];then
echo "Copyright" > tempfile
cat "$file" >> tempfile;
mv tempfile "$file";
fi
done
hacerlo recursiva , si tienes bas h 4,0
#!/bin/bash
shopt -s nullglob
shopt -s globstar
for file in /path/**
do
if [ -f "$file" ];then
echo "Copyright" > tempfile
cat "$file" >> tempfile;
mv tempfile "$file";
fi
done
o el uso de find
find /path -type f | while read -r file
do
echo "Copyright" > tempfile
cat "$file" >> tempfile;
mv tempfile "$file";
done
+0
muy bien hecho. Introdujo muchas técnicas aquí. Los estudiaré más tarde. gracias. –
0
Trabajando en Mac OS X:
#!/usr/bin/env bash
for f in `find . -iname "*.ts"`; do # just for *.ts files
echo -e "/*\n * My Company \n *\n * Copyright © 2018 MyCompany. All rights reserved.\n *\n *\n */" > tmpfile
cat $f >> tmpfile
mv tmpfile $f
done
Cuestiones relacionadas
- 1. Ocultar el largo mensaje de copyright en la parte superior de todos los archivos
- 2. inserte o ignore varios documentos en mongoDB
- 3. imprimir el símbolo de copyright en TextView
- 4. Grep en varios archivos en el sistema de archivos Hadoop
- 5. Aviso de copyright de GPL al aportar nuevos archivos
- 6. JavaScript en varios archivos
- 7. caracter de copyright en vim
- 8. ¿Entradas de varios archivos?
- 9. Configurar Log4net para escribir en varios archivos
- 10. ¿Hay alguna manera de tener el texto de copyright antepuesto a los nuevos archivos en Vim?
- 11. Eliminación de varios archivos con el comodín
- 12. models.py dividirse en varios archivos
- 13. Plantillas distribuidas en varios archivos
- 14. Varios archivos adjuntos en C#
- 15. Inserte archivos estáticos literalmente en plantillas Jinja sin analizarlos
- 16. copiar varios archivos en python
- 17. Split views.py en varios archivos
- 18. ¿Estableciendo declaración de copyright por proyecto?
- 19. Acceso a varios archivos en VIM
- 20. ¿Problema de copyright de CSS?
- 21. Quitar Copyright Xcode
- 22. Rellenar varios archivos PDF
- 23. Fusionando varios archivos javascript
- 24. símbolo de copyright en el CSS: después de pseudo-elemento
- 25. unir varios archivos
- 26. XSLT Transformar varios archivos desde el subdirectorio
- 27. Compilación de varios archivos Ocaml
- 28. AFnetworking descarga de varios archivos
- 29. JSLint con varios archivos
- 30. Escribir información de copyright en código python
+1 Para su siguiente truco, Paul va a hacer en 5 bytes con 'perl -e ' –
+1 ¡Agradable! Entrará en mi repositorio de herramientas. Me pregunto, ¿cómo podría uno hacer eso recursivo? –
@Byron Whitlock: ¿por qué perl? sed haría muy bien –