Re: [RESOLVIDO]Renomear arquivos com SED
valeu galera!...resolvido! João Henrique Viana escreveu: Vai aí minha ajuda... #!/bin/sh for i in `ls *.novo`; do mv $i $(echo `basename $i .novo`) done Retira a extensão .novo dos arquivos existentes no diretório Sds, João Henrique Arthur Furlan escreveu: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Flávio R. Lopes wrote: Boa tarde galera! Seguinte: Tenho vários diretórios onde são gerados alguns arquivos, onde o padrão deles é que terminam com a extensão ".txt", por exemplo: banana.txt ventilador.txt regua.txt arquivocomnomegrande.txt e por aí vai. gostaria na verdade de alguma rotina com o SED (que agisse de forma recurssiva nos diretorios que eu indicar) que somente tirasse as extensões deles, sem alterar seu conteudo, ou seja: banana.txt ficaria banana ventilador.txt ficaria ventilador regua.txt ficaria regua arquivocomnomegrande.txt ficaria arquivocomnomegrande em resumo, seria a mesma coisa que eu fizesse manualmente o seguinte: mv banana.txt banana mv ventilador.txt ventilador mv regua.txt regua mv arquivocomnomegrande.txt arquivocomnomegrande Como posso fazer isso? Acredito que o seguinte comando faça o que você quer: find $DIR -type f -name '*.txt' -exec rename 's/\.txt$//' {} \; - -- Atenciosamente, Arthur Furlan (afurlan) http://blog.afurlan.org Public GPG Key: 27D81084 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQIcBAEBCAAGBQJLDywyAAoJEOW5JtQn2BCEioIQAIEm3EmDLqimN2PyQuiV75Yo UtCATzGq8bTVxkRbuVv4UNj2x51FobZfaGiudjRws8m5V3lTxafl8PFj41qlZId2 3plDi6TQ/CzX/baea+6BeALqQhlGF8wZjy8uV18KVlmSuMWoKl6dUveNfNf39IXY vGtdL5FNTUj07U+ImTzOsxRHQVqFSzSU9XIXGBljQfrWi0uXnYRCjqpNVTfNPBPb UDzV8wxYw5PzkgLKexzwhz0enJjkssQh8pWZ3vGscAWOUQ48OJsYAPn3OZsKK9MK 2GVLGdfeOgLp+6nI7q2o2tPwDoZlfbLtocesrFzfh7GZIp+e3+YskiJCKX4SwfrK 4xhg/nU206yBEDl8vc8+kHc87U6G5JtSdcP791s3nm0wVDjULDeoVj9aIZE1OTxK IgKZJScLj6BXHeNpg1BTQolWiz8XHA4/UhetDodj3K4sATPRMGEpCFB7hd4i2M0K 8c1A6aKqVgA/z7AAFz4cSAwA6L+YMpcBwXKdB7JprIP0zF+hMlTjJKoyEG8/1o39 AG6tBEBYEKmmMle6zllvu1eJzpqEwmXITTH2cjyCv5GdI+r8xAmFYJEHg5jjp9A1 0b456HIieuZk3t65wDLWkNsWMyGEw4wZ7dw+DXHlt7P22ZPN/Nb8qPW1VGkV yKubMQ3skSoee9HZFbuO =MHIL -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org -- To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: Renomear arquivos com SED
Vai aí minha ajuda... #!/bin/sh for i in `ls *.novo`; do mv $i $(echo `basename $i .novo`) done Retira a extensão .novo dos arquivos existentes no diretório Sds, João Henrique Arthur Furlan escreveu: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Flávio R. Lopes wrote: Boa tarde galera! Seguinte: Tenho vários diretórios onde são gerados alguns arquivos, onde o padrão deles é que terminam com a extensão ".txt", por exemplo: banana.txt ventilador.txt regua.txt arquivocomnomegrande.txt e por aí vai. gostaria na verdade de alguma rotina com o SED (que agisse de forma recurssiva nos diretorios que eu indicar) que somente tirasse as extensões deles, sem alterar seu conteudo, ou seja: banana.txt ficaria banana ventilador.txt ficaria ventilador regua.txt ficaria regua arquivocomnomegrande.txt ficaria arquivocomnomegrande em resumo, seria a mesma coisa que eu fizesse manualmente o seguinte: mv banana.txt banana mv ventilador.txt ventilador mv regua.txt regua mv arquivocomnomegrande.txt arquivocomnomegrande Como posso fazer isso? Acredito que o seguinte comando faça o que você quer: find $DIR -type f -name '*.txt' -exec rename 's/\.txt$//' {} \; - -- Atenciosamente, Arthur Furlan (afurlan) http://blog.afurlan.org Public GPG Key: 27D81084 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQIcBAEBCAAGBQJLDywyAAoJEOW5JtQn2BCEioIQAIEm3EmDLqimN2PyQuiV75Yo UtCATzGq8bTVxkRbuVv4UNj2x51FobZfaGiudjRws8m5V3lTxafl8PFj41qlZId2 3plDi6TQ/CzX/baea+6BeALqQhlGF8wZjy8uV18KVlmSuMWoKl6dUveNfNf39IXY vGtdL5FNTUj07U+ImTzOsxRHQVqFSzSU9XIXGBljQfrWi0uXnYRCjqpNVTfNPBPb UDzV8wxYw5PzkgLKexzwhz0enJjkssQh8pWZ3vGscAWOUQ48OJsYAPn3OZsKK9MK 2GVLGdfeOgLp+6nI7q2o2tPwDoZlfbLtocesrFzfh7GZIp+e3+YskiJCKX4SwfrK 4xhg/nU206yBEDl8vc8+kHc87U6G5JtSdcP791s3nm0wVDjULDeoVj9aIZE1OTxK IgKZJScLj6BXHeNpg1BTQolWiz8XHA4/UhetDodj3K4sATPRMGEpCFB7hd4i2M0K 8c1A6aKqVgA/z7AAFz4cSAwA6L+YMpcBwXKdB7JprIP0zF+hMlTjJKoyEG8/1o39 AG6tBEBYEKmmMle6zllvu1eJzpqEwmXITTH2cjyCv5GdI+r8xAmFYJEHg5jjp9A1 0b456HIieuZk3t65wDLWkNsWMyGEw4wZ7dw+DXHlt7P22ZPN/Nb8qPW1VGkV yKubMQ3skSoee9HZFbuO =MHIL -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: Renomear arquivos com SED
Olá Junior!obrigado cara!funfou!!! Abraço! Junior Polegato - Linux escreveu: Flávio R. Lopes escreveu: Boa tarde galera! Seguinte: Tenho vários diretórios onde são gerados alguns arquivos, onde o padrão deles é que terminam com a extensão ".txt", por exemplo: banana.txt ventilador.txt regua.txt arquivocomnomegrande.txt e por aí vai. gostaria na verdade de alguma rotina com o SED (que agisse de forma recurssiva nos diretorios que eu indicar) que somente tirasse as extensões deles, sem alterar seu conteudo, ou seja: banana.txt ficaria banana ventilador.txt ficaria ventilador regua.txt ficaria regua arquivocomnomegrande.txt ficaria arquivocomnomegrande em resumo, seria a mesma coisa que eu fizesse manualmente o seguinte: mv banana.txt banana mv ventilador.txt ventilador mv regua.txt regua mv arquivocomnomegrande.txt arquivocomnomegrande Como posso fazer isso? abraço, Flávio Olá, Puramente com sed não vai dar, pois tem que criar uma lista dos arquivos, duplicar o nome base, etc... Assim sendo, aconselho uma linha com find + mv + dirname + basename (não testei, então testa antes): find $DIRETORIO -type f -name "*.txt" -exec bash -c 'mv -v "{}" "`dirname "{}"`/`basename "{}" .txt`"' \; onde $DIRETORIO é o diretório onde encontram-se os arquivos. []'s Junior Polegato -- To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: Renomear arquivos com SED
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Flávio R. Lopes wrote: > Boa tarde galera! > > Seguinte: > Tenho vários diretórios onde são gerados alguns arquivos, onde o padrão > deles é que terminam com a extensão ".txt", por exemplo: > > banana.txt > ventilador.txt > regua.txt > arquivocomnomegrande.txt > > e por aí vai. > > gostaria na verdade de alguma rotina com o SED (que agisse de forma > recurssiva nos diretorios que eu indicar) que somente tirasse as > extensões deles, sem alterar seu conteudo, ou seja: > > banana.txt ficaria banana > ventilador.txt ficaria ventilador > regua.txt ficaria regua > arquivocomnomegrande.txt ficaria arquivocomnomegrande > > em resumo, seria a mesma coisa que eu fizesse manualmente o seguinte: > > mv banana.txt banana > mv ventilador.txt ventilador > mv regua.txt regua > mv arquivocomnomegrande.txt arquivocomnomegrande > > > Como posso fazer isso? Acredito que o seguinte comando faça o que você quer: find $DIR -type f -name '*.txt' -exec rename 's/\.txt$//' {} \; - -- Atenciosamente, Arthur Furlan (afurlan) http://blog.afurlan.org Public GPG Key: 27D81084 -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iQIcBAEBCAAGBQJLDywyAAoJEOW5JtQn2BCEioIQAIEm3EmDLqimN2PyQuiV75Yo UtCATzGq8bTVxkRbuVv4UNj2x51FobZfaGiudjRws8m5V3lTxafl8PFj41qlZId2 3plDi6TQ/CzX/baea+6BeALqQhlGF8wZjy8uV18KVlmSuMWoKl6dUveNfNf39IXY vGtdL5FNTUj07U+ImTzOsxRHQVqFSzSU9XIXGBljQfrWi0uXnYRCjqpNVTfNPBPb UDzV8wxYw5PzkgLKexzwhz0enJjkssQh8pWZ3vGscAWOUQ48OJsYAPn3OZsKK9MK 2GVLGdfeOgLp+6nI7q2o2tPwDoZlfbLtocesrFzfh7GZIp+e3+YskiJCKX4SwfrK 4xhg/nU206yBEDl8vc8+kHc87U6G5JtSdcP791s3nm0wVDjULDeoVj9aIZE1OTxK IgKZJScLj6BXHeNpg1BTQolWiz8XHA4/UhetDodj3K4sATPRMGEpCFB7hd4i2M0K 8c1A6aKqVgA/z7AAFz4cSAwA6L+YMpcBwXKdB7JprIP0zF+hMlTjJKoyEG8/1o39 AG6tBEBYEKmmMle6zllvu1eJzpqEwmXITTH2cjyCv5GdI+r8xAmFYJEHg5jjp9A1 0b456HIieuZk3t65wDLWkNsWMyGEw4wZ7dw+DXHlt7P22ZPN/Nb8qPW1VGkV yKubMQ3skSoee9HZFbuO =MHIL -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: Renomear arquivos com SED
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 26-11-2009 18:04, Flávio R. Lopes wrote: > Boa tarde galera! > > Seguinte: > Tenho vários diretórios onde são gerados alguns arquivos, onde o padrão > deles é que terminam com a extensão ".txt", por exemplo: > > banana.txt > ventilador.txt > regua.txt > arquivocomnomegrande.txt > > e por aí vai. > > gostaria na verdade de alguma rotina com o SED (que agisse de forma > recurssiva nos diretorios que eu indicar) que somente tirasse as > extensões deles, sem alterar seu conteudo, ou seja: > > banana.txt ficaria banana > ventilador.txt ficaria ventilador > regua.txt ficaria regua > arquivocomnomegrande.txt ficaria arquivocomnomegrande > > em resumo, seria a mesma coisa que eu fizesse manualmente o seguinte: > > mv banana.txt banana > mv ventilador.txt ventilador > mv regua.txt regua > mv arquivocomnomegrande.txt arquivocomnomegrande > > > Como posso fazer isso? Além do script shell ou de algum malabarismo com shell, você pode olhar o 'mmv' e o 'rename'. Abraço, - -- Felipe Augusto van de Wiel (faw) "Debian. Freedom to code. Code to freedom!" -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEAREIAAYFAksPAjIACgkQCjAO0JDlykZfIgCgjSXcM0k7sDq6e3E38gde7Nrh P+gAnRERDoD6wSRKdPTT9GMfXa3yVCsQ =Lr64 -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: Renomear arquivos com SED
Flávio R. Lopes escreveu: Boa tarde galera! Seguinte: Tenho vários diretórios onde são gerados alguns arquivos, onde o padrão deles é que terminam com a extensão ".txt", por exemplo: banana.txt ventilador.txt regua.txt arquivocomnomegrande.txt e por aí vai. gostaria na verdade de alguma rotina com o SED (que agisse de forma recurssiva nos diretorios que eu indicar) que somente tirasse as extensões deles, sem alterar seu conteudo, ou seja: banana.txt ficaria banana ventilador.txt ficaria ventilador regua.txt ficaria regua arquivocomnomegrande.txt ficaria arquivocomnomegrande em resumo, seria a mesma coisa que eu fizesse manualmente o seguinte: mv banana.txt banana mv ventilador.txt ventilador mv regua.txt regua mv arquivocomnomegrande.txt arquivocomnomegrande Como posso fazer isso? abraço, Flávio Olá, Puramente com sed não vai dar, pois tem que criar uma lista dos arquivos, duplicar o nome base, etc... Assim sendo, aconselho uma linha com find + mv + dirname + basename (não testei, então testa antes): find $DIRETORIO -type f -name "*.txt" -exec bash -c 'mv -v "{}" "`dirname "{}"`/`basename "{}" .txt`"' \; onde $DIRETORIO é o diretório onde encontram-se os arquivos. []'s Junior Polegato -- To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Renomear arquivos com SED
Boa tarde galera! Seguinte: Tenho vários diretórios onde são gerados alguns arquivos, onde o padrão deles é que terminam com a extensão ".txt", por exemplo: banana.txt ventilador.txt regua.txt arquivocomnomegrande.txt e por aí vai. gostaria na verdade de alguma rotina com o SED (que agisse de forma recurssiva nos diretorios que eu indicar) que somente tirasse as extensões deles, sem alterar seu conteudo, ou seja: banana.txt ficaria banana ventilador.txt ficaria ventilador regua.txt ficaria regua arquivocomnomegrande.txt ficaria arquivocomnomegrande em resumo, seria a mesma coisa que eu fizesse manualmente o seguinte: mv banana.txt banana mv ventilador.txt ventilador mv regua.txt regua mv arquivocomnomegrande.txt arquivocomnomegrande Como posso fazer isso? abraço, Flávio -- To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org