Suis pas très fort dans l'utilisation de "find" ou "ls" ou ???
Qqun peut-il m'aider ?
Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS:
copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini
Merci à tous
Suis pas très fort dans l'utilisation de "find" ou "ls" ou ??? Qqun peut-il m'aider ? Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS: copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini Merci à tous
mmv *.txt =1.ini
Mais si tu n'as pas mmv:
bash -c 'for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done'
Peut être que:
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
fonctionne directement dans ksh?
Sinon:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
-- __Pascal_Bourguignon__ http://www.informatimago.com/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Living free in Alaska or in Siberia, a grizzli's life expectancy is 35 years, but no more than 8 years in captivity. http://www.theadvocates.org/
"DomiPi" <akuj0006@wanadoo.be> writes:
Suis pas très fort dans l'utilisation de "find" ou "ls" ou ???
Qqun peut-il m'aider ?
Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS:
copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini
Merci à tous
mmv *.txt =1.ini
Mais si tu n'as pas mmv:
bash -c 'for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done'
Peut être que:
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
fonctionne directement dans ksh?
Sinon:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
--
__Pascal_Bourguignon__ http://www.informatimago.com/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Living free in Alaska or in Siberia, a grizzli's life expectancy is 35 years,
but no more than 8 years in captivity. http://www.theadvocates.org/
Suis pas très fort dans l'utilisation de "find" ou "ls" ou ??? Qqun peut-il m'aider ? Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS: copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini Merci à tous
mmv *.txt =1.ini
Mais si tu n'as pas mmv:
bash -c 'for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done'
Peut être que:
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
fonctionne directement dans ksh?
Sinon:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
-- __Pascal_Bourguignon__ http://www.informatimago.com/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Living free in Alaska or in Siberia, a grizzli's life expectancy is 35 years, but no more than 8 years in captivity. http://www.theadvocates.org/
DomiPi
Merci Pascal C'est vraiment de la réponse en real time !!! Dominique
"Pascal Bourguignon" a écrit dans le message de news:
"DomiPi" writes:
Suis pas très fort dans l'utilisation de "find" ou "ls" ou ??? Qqun peut-il m'aider ? Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS: copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini Merci à tous
mmv *.txt =1.ini
Mais si tu n'as pas mmv:
bash -c 'for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done'
Peut être que:
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
fonctionne directement dans ksh?
Sinon:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
Living free in Alaska or in Siberia, a grizzli's life expectancy is 35 years,
but no more than 8 years in captivity. http://www.theadvocates.org/
Merci Pascal
C'est vraiment de la réponse en real time !!!
Dominique
"Pascal Bourguignon" <spam@thalassa.informatimago.com> a écrit dans le
message de news:87llpwyi2c.fsf@thalassa.informatimago.com...
"DomiPi" <akuj0006@wanadoo.be> writes:
Suis pas très fort dans l'utilisation de "find" ou "ls" ou ???
Qqun peut-il m'aider ?
Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS:
copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini
Merci à tous
mmv *.txt =1.ini
Mais si tu n'as pas mmv:
bash -c 'for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done'
Peut être que:
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
fonctionne directement dans ksh?
Sinon:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
Merci Pascal C'est vraiment de la réponse en real time !!! Dominique
"Pascal Bourguignon" a écrit dans le message de news:
"DomiPi" writes:
Suis pas très fort dans l'utilisation de "find" ou "ls" ou ??? Qqun peut-il m'aider ? Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS: copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini Merci à tous
mmv *.txt =1.ini
Mais si tu n'as pas mmv:
bash -c 'for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done'
Peut être que:
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
fonctionne directement dans ksh?
Sinon:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
cp $f `basename $f .txt`.ini
DomiPi
mmv et bash ne sont pas implémentés dans mon OS par contre for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done fonctionne très bien mais for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done me donne "bad substitution", pourtant ${....} est documenté mais je ne vois pas le détail avec les slash pour une substitution. Dommage cette commande me paraissait plus "propre" à moins que ... Merci encore
"Pascal Bourguignon" a écrit dans le message de news:
"DomiPi" writes:
Suis pas très fort dans l'utilisation de "find" ou "ls" ou ??? Qqun peut-il m'aider ? Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS: copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini Merci à tous
mmv *.txt =1.ini
Mais si tu n'as pas mmv:
bash -c 'for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done'
Peut être que:
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
fonctionne directement dans ksh?
Sinon:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
Living free in Alaska or in Siberia, a grizzli's life expectancy is 35 years,
but no more than 8 years in captivity. http://www.theadvocates.org/
mmv et bash
ne sont pas implémentés dans mon OS par contre
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
fonctionne très bien
mais
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
me donne "bad substitution", pourtant ${....} est documenté mais je ne vois
pas le détail avec les slash pour une substitution.
Dommage cette commande me paraissait plus "propre" à moins que ...
Merci encore
"Pascal Bourguignon" <spam@thalassa.informatimago.com> a écrit dans le
message de news:87llpwyi2c.fsf@thalassa.informatimago.com...
"DomiPi" <akuj0006@wanadoo.be> writes:
Suis pas très fort dans l'utilisation de "find" ou "ls" ou ???
Qqun peut-il m'aider ?
Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS:
copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini
Merci à tous
mmv *.txt =1.ini
Mais si tu n'as pas mmv:
bash -c 'for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done'
Peut être que:
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
fonctionne directement dans ksh?
Sinon:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
mmv et bash ne sont pas implémentés dans mon OS par contre for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done fonctionne très bien mais for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done me donne "bad substitution", pourtant ${....} est documenté mais je ne vois pas le détail avec les slash pour une substitution. Dommage cette commande me paraissait plus "propre" à moins que ... Merci encore
"Pascal Bourguignon" a écrit dans le message de news:
"DomiPi" writes:
Suis pas très fort dans l'utilisation de "find" ou "ls" ou ??? Qqun peut-il m'aider ? Dans un KSH, je voudrais faire un "copy" comme dans les anciens DOS: copy *.txt *.ini c-a-d copier tous les fichiers.txt en fichiers.ini Merci à tous
mmv *.txt =1.ini
Mais si tu n'as pas mmv:
bash -c 'for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done'
Peut être que:
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
fonctionne directement dans ksh?
Sinon:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
Encore plus simple !!!! et ca fonctionne !!!! Merci Laurent
"Laurent Wacrenier" <lwa@ teaser . fr> a écrit dans le message de news:
Pascal Bourguignon écrit:
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
cp $f `basename $f .txt`.ini
Stephane Chazelas
2003-12-01, 11:35(+00), DomiPi:
mmv et bash ne sont pas implémentés dans mon OS par contre for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done fonctionne très bien [merci de citer à l'endroit et avec modération]
Sauf pour les noms de fichiers qui contiennent des TAB, des NL, des successions de SPC, des backslashs, qui commencent par "-" ou par ".", et ça ne prévient pas l'effacement de fichiers.
mais for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done me donne "bad substitution", pourtant ${....} est documenté mais je ne vois pas le détail avec les slash pour une substitution. Dommage cette commande me paraissait plus "propre" à moins que ... [...]
${var/%.../...} est spécifique aux shells ksh93, bash et zsh.
Avec tout shell POSIX conformant, tu peux faire:
for f in ./*.txt ./.*.txt ./.txt; do [ -e "$f" ] || continue r=${f%.txt}.ini mv -i "$f" "$r" done
mmv et bash
ne sont pas implémentés dans mon OS par contre
for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done
fonctionne très bien
[merci de citer à l'endroit et avec modération]
Sauf pour les noms de fichiers qui contiennent des TAB, des NL,
des successions de SPC, des backslashs, qui commencent par
"-" ou par ".", et ça ne prévient pas l'effacement de fichiers.
mais
for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done
me donne "bad substitution", pourtant ${....} est documenté mais je ne vois
pas le détail avec les slash pour une substitution.
Dommage cette commande me paraissait plus "propre" à moins que ...
[...]
${var/%.../...} est spécifique aux shells ksh93, bash et zsh.
Avec tout shell POSIX conformant, tu peux faire:
for f in ./*.txt ./.*.txt ./.txt; do
[ -e "$f" ] || continue
r=${f%.txt}.ini
mv -i "$f" "$r"
done
mmv et bash ne sont pas implémentés dans mon OS par contre for f in *.txt ; do cp "$f" "`echo $f|sed -e 's/.txt$/.ini/'`" ; done fonctionne très bien [merci de citer à l'endroit et avec modération]
Sauf pour les noms de fichiers qui contiennent des TAB, des NL, des successions de SPC, des backslashs, qui commencent par "-" ou par ".", et ça ne prévient pas l'effacement de fichiers.
mais for f in *.txt ; do cp "$f" "${f/%.txt/.ini}" ; done me donne "bad substitution", pourtant ${....} est documenté mais je ne vois pas le détail avec les slash pour une substitution. Dommage cette commande me paraissait plus "propre" à moins que ... [...]
${var/%.../...} est spécifique aux shells ksh93, bash et zsh.
Avec tout shell POSIX conformant, tu peux faire:
for f in ./*.txt ./.*.txt ./.txt; do [ -e "$f" ] || continue r=${f%.txt}.ini mv -i "$f" "$r" done