sustituir script reemplazar especiales eliminar comando caracteres caracter bash cut

bash - script - sed shell



Elimina el primer carácter n de un grupo de nombres de archivos con Cortar (4)

estoy usando

ls | cut -c 5-

Esto devuelve una lista de los nombres de archivos en el formato que quiero, pero en realidad no realiza la acción. Por favor avise.


Algo como esto debería funcionar:

for x in *; do echo mv $x `echo $x | cut -c 5-` done

Tenga en cuenta que esto podría ser destructivo, así que ejecútelo de esta manera primero, y luego elimine el echo una vez que esté seguro de que hace lo que quiere.


Si recibe un mensaje de error que dice:

renombrar no se reconoce como el nombre de un cmdlet

Esto podría funcionar para usted,

get-childitem * | rename-item -newname { [string]($_.name).substring(5) }


puede utilizar el siguiente comando cuando se encuentra en la carpeta donde desea cambiar el nombre:

rename -n -v ''s/^(.{5})//'' *

-n es para ninguna acción y -v para mostrar cuáles serán los cambios. Si está satisfecho con los resultados, puede eliminar ambos.

rename ''s/^(.{5})//'' *


rename -n ''s/.{5}(.*)/$1/'' *

La -n es para simular; eliminarlo para obtener el resultado real.