[résolu]une commande pour séléctionner des fichiers

hello,
chez moi je n’ai pas de gestionnaire de fenêtre genre thunar et je gére mes dossiers persos avec la console.
je me demandais s’il existait une commande permettant de séléctionner plusieurs fichier. Du genre je veux copier fichier1, fichier2, fichier3 vers un autre emplacement comment procéder autrement que cp fichier1 fichier2 fichier3 /nouvel_emplacement ?

En te prennant au mot on pourrait faire :

cp fichier* /nouvel_emplacement

:smiley:
Ok je sors ! :smt006

man cp:

CP(1) Commandes CP(1)

NOM
cp - Copier des fichiers et des répertoires

SYNOPSIS
cp [OPTION]… [-T] SOURCE CIBLE
cp [OPTION]… SOURCE… RÉPERTOIRE
cp [OPTION]… -t RÉPERTOIRE SOURCE…

DESCRIPTION
Copier la SOURCE vers la CIBLE, ou de multiples SOURCEs vers le RÉPERTOIRE.

As tu active la completion dans ton .bashrc ?

sinon essaye ca change beaucoup de chose :wink:

[quote=“poiuy”]DESCRIPTION
Copier la SOURCE vers la CIBLE, ou de multiples SOURCEs vers le RÉPERTOIRE.[/quote]merci c’est mon exemple :smiley: [quote=“ahillerin”]As tu active la completion dans ton .bashrc ?

sinon essaye ca change beaucoup de chose :wink:[/quote]si tu veux parler de la completion avec la touche tab ben c’est activé par défaut mais bon ça simplifie beaucoup certes mais ça reste encore assez lourd comparé au séléctionné avec la souris.

ba tu as 2 sultions:

Utilises un “gestionnaire de fenêtre” et la tu peux effectivment séléctionner avec la souris.

ou alors comme tu le dis dans ton premier poste tu utilises la console avec les ligne de commandes

“console” ou “gestionnaire de fenêtre” il faut choisir !!! :wink:

PS : si tu utilises la console dans un environement de bureau (gnome Xfce,… ) tu peux utiliser la souris pour selectionner ton fichier (copier) puis le middle click (pour coller)

je n’utilise que la console et pas de souris du tout.
Ce que je me demandais c’est s’il existait une commande permettant de simplifier le transfert de plusieurs fichiers que l’on veut copier un par un sans créer de répertoire. mais bon on dirait que ça existe pas…

[quote=“sidell”]je n’utilise que la console et pas de souris du tout.
Ce que je me demandais c’est s’il existait une commande permettant de simplifier le transfert de plusieurs fichiers que l’on veut copier un par un sans créer de répertoire. mais bon on dirait que ça existe pas…[/quote]

je dois etre idiot :wink: car je ne comprends pas

si tu copies ton fichier vers une destination ton fichier sera copie vers ta destination sans creer de repertoire
si tu copies un repertoire vers une destination ton repertoire sera copie vers ta destination en creant ce dit repertoire (a utilise avec l option -r)

Ce que tu veux en fait, c’est pouvoir copier avec une seule ligne de commande les fichiers foo, bar, baz, quux et bonk (par exemple) vers un même répertoire. Tu es embêté(e?) car utiliser des joker (comme foo*, désignant les fichiers dont le nom commençe par foo) ne t’aident pas dans ce cas c’est bien cela?

Pour faire cela tu peux faire:

Remarques:

  1. J’utilise zsh et pas bash mais ça doit marcher aussi?
  2. Tu peux utiliser la complétion et les “jokers” (*) à chaque fois que tu rajoutes un item dans ta liste des éléments à déplacer (entre les { })

ne t’inquiéte pas tu n’es pas bête c’est moi qui m’exprime mal,
je vais essayer de faire plus clair.

imaginons que je suis dans mon répertoire de musique par exemple. Il est pas très bien ranger (même si c’est pas vrai) et je veux mettre quelque musique dans mon balladeur de 2go (donc quand même pas mal de musique).
Si j’ai pas envie de les copier une par une (même si c’est dans la même commande–> ça fait des longues lignes :smiley: ) y a t’il une solution?
du genre je veux copier les 500 premiers fichiers musicals ou tous les fichiers commencant par a, tout les fichier contenant le nom d’un artiste (même si j’utilise la commande find comment copier seulement le résultat de find?)

[quote=“ziouplaboum”]Ce que tu veux en fait, c’est pouvoir copier avec une seule ligne de commande les fichiers foo, bar, baz, quux et bonk (par exemple) vers un même répertoire. Tu es embêté(e?) car utiliser des joker (comme foo*, désignant les fichiers dont le nom commençe par foo) ne t’aident pas dans ce cas c’est bien cela?

Pour faire cela tu peux faire:

Remarques:

  1. J’utilise zsh et pas bash mais ça doit marcher aussi?
  2. Tu peux utiliser la complétion et les “jokers” (*) à chaque fois que tu rajoutes un item dans ta liste des éléments à déplacer (entre les { })[/quote]oui tu as bien compris mais ce que je cherche c’est à ne pas avoir à écrire (même avec la complétion) le nom des fichiers à bouger parce qu’il y en a trop (500)

P-S:\hors sujet mais quelle différence entre la commande mv et cp?\hors sujet

ba avec un find tu peux faire cela (pour les fichiers commencant par a):

cp = copier
mv=deplacer

AH

merci ça m’aide déja
et genre si je veux copier les 500 premiers fichiers?

sais pas… mais ce qui me vient a l idee c est une petite boucle du style

for i in … blablabla

par exemple...

par exemple…

c est clair et bien plus simple

pour les 500 dernier utilise tail

Et tu peux composer tout ça bien sûr:

Bref, comme dis Charlotte aux fraises ou mon fils de 2 ans et demi “c’est que du bonheur”.

Il doit y avoir moyen en utilisant rsync.

Regardes le man tu trouvera surement ton bonheur

merci, les commandes de ziouplaboum me conviennent.
merci de votre aide
bye