Заменить середину пути к файлу, сохранив имя файла в конце?

En general, probablemente optaría por la solución sencilla sed. Sin embargo, si sus archivos de entrada son enormes, es posible que desee una solución que no se tome el tiempo de leer todo el archivo solo para editar los últimos bytes.

Si está 100 % seguro de que su archivo de entrada termina con una coma seguida de una nueva línea, puede usartruncatepara eliminar estos dos últimos caracteres y luego -agregar una nueva línea final:

filesize=$(stat -L --format "%s" lastcomma.txt)
truncate --size $((filesize - 2)) lastcomma.txt 
echo >> lastcomma.txt 

Esto supone una distribución que incluye GNU truncado o equivalente.


@StéphaneChazelas señala que GNU truncateahora admite truncate -s -2 filepara acortar el archivo en dos bytes ; si tiene esta versión, lo anterior se simplifica a:

truncate --size -2 lastcomma.txt
echo >> lastcomma.txt 

0
09.04.2019, 18:37
0 ответов

Теги

Похожие вопросы