script para renombrar el ultimo caractar

Forums: 

En linux como montaria un script que me permita lo siguiente:
Estos datos son de ejemplo...

- un determinado servicio crea un archivo con este nombre

123321?
o
123456?

y sucesivamente... como yo podria hacer un script que mantenga todo pero que solo me quite o renombre el ultimo caracter...


123321
o
123456

salud2s...

Quitar el ultimo

Imagen de pepo

Si entiendo quieres quitar el signo de interrogación del fin del archivo, lo puedes hacer así:


pepo@avernum:~/borrar$ ls
12345? 23456? 34567?
pepo@avernum:~/borrar$ for fichero in *; do mv ./"${fichero}" "${fichero%\?}"; done
pepo@avernum:~/borrar$ ls
12345 23456 34567
pepo@avernum:~/borrar$

------------------------------------------------
Linux User Registered #232544
Jabber : pepo@jabberes.org
Ekiga : pepo@ekiga.net
ICQ : 337889406
GnuPG-key : www.keyserver.net

------------------------------------------------
Linux User Registered #232544
Jabber : pepo@jabberes.org
Ekiga : pepo@ekiga.net
GnuPG-key : www.keyserver.net

hace un tiempo me topé con

Imagen de Epe

hace un tiempo me topé con un problema de que las imagenes de mi cámara salen con el mismo nombre cada vez que las borro.
Es decir, hoy las saco y comienzan como 00001.jpg 00002.jpg y si las saco de la cámara y tomo nuevas fotos salen con el mismo nombre las nuevas fotos... no es un contador al infinito sino reseteable.

En el xfce encontré bulk renamer está dentro de un paquete llamado Thunar

y recuerda, en linux siempre hay más de una forma de hacer las cosas..

Saludos
epe
--
NuestroServer.com
Ecuador: +(593) 9 9246504, +(593) 2 600 4454
USA: +1 305 359 4495, España: +34 91 7617884


Saludos
epe

EcuaLinux.com

+(593) 9 9924 6504

Servicios en Software Libre

Re:

Bueno colegas probe la primera via y no se si ese caracter sera un ? o que es, pero la unica manera que funciono fue quitanlode el \ . . .

for fichero in *; do mv ./"${fichero}" "${fichero%?}"; done

de esa manera el fichero pierde ese caracter, pero ya saben se lo aplica a los demas que no lo tienen...y todos los demas archivos pierden el ultimo y la idea es que sea ese en especifico...

como podria detectar si en verdad es un ? o que es, porque desde una web se ve %0D pero desde la consola ? y desde el winscp es como un cuadro...

esto fue lo que mostro...

mv: «./12345.AV\r» y «12345.AV\r» son el mismo fichero...

el archivo es asi

12345.AV(caracter)
#-> desde winscp un cuadro
#-> desde la konsola un ?
#-> desde una web 12345.AV%0D

debe quedar asi junto a los demas que son intocables

12345.AV

que puedo hacer???

ecualug
______________________
!!!AdminRed_Debian!!!

ecualug
______________________
!!!AdminRed_Debian!!!

Puedes listar solo los que

Imagen de deathUser

Puedes listar solo los que tienen el caracter raro ...???

no se


ls *.AV?

Si eso te lista solo los archivos con el caracter raro, podrías hacer el script algo como:


for fichero in `ls *.AV?`; do mv ./"${fichero}" "${fichero%?}"; done

Suerte ...

bye
:)

Re:

Gracias hermanos, tema cerrado... y solucionado...
Antes de eso habia usado esta via...

mv $destino/*.list /tmp/
for fichero in *; do mv ./"${fichero}" "${fichero%?}"; done
mv /tmp/*.list $destino/

pero con solo esta todo salio ok...

for fichero in `ls *.AV?`; do mv ./"${fichero}" "${fichero%?}"; done

Salud2s. . .

ecualug
______________________
!!!AdminRed_Debian!!!

ecualug
______________________
!!!AdminRed_Debian!!!