Mostrando entradas con la etiqueta comandos. Mostrar todas las entradas
Mostrando entradas con la etiqueta comandos. Mostrar todas las entradas

jueves, 10 de marzo de 2011

Copia Recursiva de varios archivos en diferentes directorios sin tomar en cuenta los directorios

Algunas personas aprendemos, de acuerdo a los problemas que se nos presenten y otros por curiosidad, pues mi caso es el primero, me paso que yo tenia una estructura de archivos de esta manera

a simple vista se puede observar que tengo una lista de carpetas organizadas, en donde cada una tiene un monton de archivos .deb, de esta manera

 alacarte
│   └── alacarte_0.13.2-1_all.deb
├── bluetooth
│   ├── bluetooth_4.66-3_all.deb
│   ├── bluez_4.66-3_amd64.deb
│   ├── bluez-alsa_4.66-3_amd64.deb
│   ├── bluez-cups_4.66-3_amd64.deb
│   ├── bluez-gstreamer_4.66-3_amd64.deb
│   ├── gnome-bluetooth_2.30.0-2_amd64.deb
│   ├── gpe-bluetooth_0.56-3_amd64.deb
│   ├── gpe-icons_0.25-1_all.deb
│   ├── libcap-ng0_0.6.4-1_amd64.deb
│   ├── libcontactsdb0_0.5-4_amd64.deb
│   ├── libeventdb2_0.90-4_amd64.deb
│   ├── libgnome-bluetooth7_2.30.0-2_amd64.deb
│   ├── libgpepimc0_0.9-2_amd64.deb
│   ├── libgpevtype1_0.50-4_amd64.deb
│   ├── libgpewidget1_0.117-2_amd64.deb
│   ├── liblqr-1-0_0.4.1-1_amd64.deb
│   ├── libmagickcore3_8%3a6.6.0.4-3_amd64.deb
│   ├── libmagickwand3_8%3a6.6.0.4-3_amd64.deb
│   ├── libmimedir-gnome0.4_0.4.2-2_amd64.deb
│   ├── libnl1_1.1-6_amd64.deb
│   ├── libopenobex1_1.5-2_amd64.deb
│   ├── libsqlite0_2.8.17-6_amd64.deb
│   ├── libtododb0_0.11-2_amd64.deb
│   ├── obex-data-server_0.4.5-1+b1_amd64.deb
│   └── obexd-client_0.28-1_amd64.deb
├── build-essential
│   ├── binutils_2.20.1-16_amd64.deb
│   ├── build-essential_11.5_amd64.deb
│   ├── dpkg-dev_1.15.8.10_all.deb
│   ├── fakeroot_1.14.4-1_amd64.deb
│   ├── g++_4%3a4.4.5-1_amd64.deb
│   ├── g++-4.4_4.4.5-8_amd64.deb
│   ├── gcc_4%3a4.4.5-1_amd64.deb
│   ├── gcc-4.4_4.4.5-8_amd64.deb
│   ├── libalgorithm-diff-perl_1.19.02-2_all.deb
│   ├── libalgorithm-diff-xs-perl_0.04-1_amd64.deb
│   ├── libalgorithm-merge-perl_0.08-2_all.deb
│   ├── libc6-dev_2.11.2-10_amd64.deb
│   ├── libc-dev-bin_2.11.2-10_amd64.deb
│   ├── libdpkg-perl_1.15.8.10_all.deb
│   ├── libstdc++6-4.4-dev_4.4.5-8_amd64.deb
│   ├── linux-libc-dev_2.6.32-30_amd64.deb
│   ├── make_3.81-8_amd64.deb
│   └── manpages-dev_3.27-1_all.deb
├── chromiun-browser
│   ├── chromium-browser_6.0.472.63~r59945-5+squeeze2_amd64.deb
│   ├── chromium-browser-dbg_6.0.472.63~r59945-5+squeeze2_amd64.deb
│   ├── chromium-browser-inspector_6.0.472.63~r59945-5+squeeze2_all.deb
│   ├── chromium-browser-l10n_6.0.472.63~r59945-5+squeeze2_all.deb
│   ├── libglewmx1.5_1.5.4-1_amd64.deb
│   └── libv8-2.2.24_2.2.24-6_amd64.deb
├── compresion
│   ├── p7zip-rar_9.04~ds.1-1_amd64.deb
│   ├── rar_2%3a3.9.3-1_amd64.deb
│   ├── unrar_1%3a3.9.10-1_amd64.deb
│   └── unrar-free_1%3a0.0.1+cvs20071127-1_amd64.deb
├── dropbox
│   └── nautilus-dropbox_0.6.1-1_amd64.deb
├── empathy
│   ├── avahi-daemon_0.6.27-2+squeeze1_amd64.deb
│   ├── ca-certificates_20090814+nmu2_all.deb
│   ├── empathy_2.30.3-1_amd64.deb
│   ├── empathy-common_2.30.3-1_all.deb
│   ├── freedesktop-sound-theme_0.7.dfsg-1_amd64.deb
│   ├── freepats_20060219-1_all.deb
│   ├── geoclue_0.12.0-1_amd64.deb
│   ├── geoclue-hostip_0.12.0-1_amd64.deb
│   ├── geoclue-localnet_0.12.0-1_amd64.deb
│   ├── geoclue-manual_0.12.0-1_amd64.deb
│   ├── geoclue-yahoo_0.12.0-1_amd64.deb
│   ├── gnome-session-canberra_0.24-1_all.deb
│   ├── gstreamer0.10-nice_0.0.12-1_amd64.deb
│   ├── gstreamer0.10-plugins-bad_0.10.19-2+b2_amd64.deb
│   ├── libass4_0.9.9-1_amd64.deb
│   ├── libavahi-core7_0.6.27-2+squeeze1_amd64.deb
│   ├── libcdaudio1_0.99.12p2-9_amd64.deb
│   ├── libcelt0-0_0.7.1-1_amd64.deb
│   ├── libchamplain-0.4-0_0.4.6-2+b1_amd64.deb
│   ├── libchamplain-gtk-0.4-0_0.4.6-2+b1_amd64.deb
│   ├── libclutter-gtk-0.10-0_0.10.4-1_amd64.deb
│   ├── libcurl3-gnutls_7.21.0-1_amd64.deb
│   ├── libdaemon0_0.14-2_amd64.deb
│   ├── libdc1394-22_2.1.2-3_amd64.deb
│   ├── libdca0_0.0.5-3_amd64.deb
│   ├── libdirac-encoder0_1.0.2-3_amd64.deb
│   ├── libdirectfb-1.2-9_1.2.10.0-4_amd64.deb
│   ├── libdvdnav4_4.1.3-7_amd64.deb
│   ├── libdvdread4_4.1.3-10_amd64.deb
│   ├── libenca0_1.13-3_amd64.deb
│   ├── libfaad2_2.7-6_amd64.deb
│   ├── libfftw3-3_3.2.2-1_amd64.deb
│   ├── libflite1_1.4-release-2_amd64.deb
│   ├── libgeoclue0_0.12.0-1_amd64.deb
│   ├── libgme0_0.5.5-2_amd64.deb
│   ├── libgsm1_1.0.13-3_amd64.deb
│   ├── libgssdp-1.0-2_0.8.0-2_amd64.deb
│   ├── libgstfarsight0.10-0_0.0.20-2_amd64.deb
│   ├── libgupnp-1.0-3_0.14.0-2_amd64.deb
│   ├── libgupnp-igd-1.0-3_0.1.7-3_amd64.deb
│   ├── libiptcdata0_1.0.4-1+b1_amd64.deb
│   ├── libjack-jackd2-0_1.9.6~dfsg.1-2_amd64.deb
│   ├── libkate1_0.3.7-3_amd64.deb
│   ├── libmeanwhile1_1.0.2-3_amd64.deb
│   ├── libmimic0_1.0.4-2+b2_amd64.deb
│   ├── libmms0_0.6-1_amd64.deb
│   ├── libmodplug1_1%3a0.8.8.1-1_amd64.deb
│   ├── libmpcdec6_2%3a0.1~r459-1_amd64.deb
│   ├── libmusicbrainz4c2a_2.1.5-4_amd64.deb
│   ├── libnice0_0.0.12-1_amd64.deb
│   ├── libnm-glib2_0.8.1-6_amd64.deb
│   ├── libnm-util1_0.8.1-6_amd64.deb
│   ├── libnss-mdns_0.10-3.1_amd64.deb
│   ├── libofa0_0.9.3-3.1_amd64.deb
│   ├── liboil0.3_0.3.17-2_amd64.deb
│   ├── libperl5.10_5.10.1-17_amd64.deb
│   ├── libpurple0_2.7.3-1+squeeze1_amd64.deb
│   ├── libpurple-bin_2.7.3-1+squeeze1_all.deb
│   ├── libraptor1_1.4.21-2_amd64.deb
│   ├── librasqal2_0.9.20-1_amd64.deb
│   ├── librdf0_1.0.10-3_amd64.deb
│   ├── libsasl2-modules_2.1.23.dfsg1-7_amd64.deb
│   ├── libschroedinger-1.0-0_1.0.9-2_amd64.deb
│   ├── libsilc-1.1-2_1.1.10-2_amd64.deb
│   ├── libsilcclient-1.1-3_1.1.10-2_amd64.deb
│   ├── libslv2-9_0.6.6-5_amd64.deb
│   ├── libsndfile1_1.0.21-3_amd64.deb
│   ├── libsoundtouch1c2_1.3.1-2_amd64.deb
│   ├── libsysfs2_2.1.0+repack-1_amd64.deb
│   ├── libtelepathy-farsight0_0.0.14-2+b1_amd64.deb
│   ├── libtelepathy-glib0_0.11.11-1_amd64.deb
│   ├── libts-0.0-0_1.0-7_amd64.deb
│   ├── libvpx0_0.9.1-2_amd64.deb
│   ├── libwildmidi1_0.2.3.2-2_amd64.deb
│   ├── libzbar0_0.10+doc-4_amd64.deb
│   ├── libzephyr4_3.0-1_amd64.deb
│   ├── nautilus-sendto_2.28.4-2+b1_amd64.deb
│   ├── nautilus-sendto-empathy_2.30.3-1_amd64.deb
│   ├── pidgin-data_2.7.3-1+squeeze1_all.deb
│   ├── python-crypto_2.1.0-2_amd64.deb
│   ├── python-dbus_0.83.1-1_amd64.deb
│   ├── python-farsight_0.0.20-2_amd64.deb
│   ├── python-gst0.10_0.10.19-1_amd64.deb
│   ├── python-libproxy_0.3.1-2_all.deb
│   ├── python-openssl_0.10-1_amd64.deb
│   ├── python-papyon_0.4.10-1_all.deb
│   ├── python-telepathy_0.15.17-1_all.deb
│   ├── telepathy-butterfly_0.5.12-1_all.deb
│   ├── telepathy-gabble_0.9.15-1+squeeze1_amd64.deb
│   ├── telepathy-haze_0.4.0-1_amd64.deb
│   ├── telepathy-mission-control-5_1%3a5.4.3-1_amd64.deb
│   ├── telepathy-salut_0.3.12-1_amd64.deb
│   └── tsconf_1.0-7_all.deb
├── flashplugin-nonfree
│   └── flashplugin-nonfree_1%3a2.8.2_amd64.deb
├── gcalctool
│   └── gcalctool_5.30.2-2_amd64.deb
├── gconf-editor
│   ├── gconf-defaults-service_2.28.1-6_amd64.deb
│   └── gconf-editor_2.30.0-2_amd64.deb

entonces la mision de esta entrada es mover todos los archivos que estan en cada carpeta a una sola, sin tener que hecerlo manualmente, el comando es el siguiente ,
creo una carpeta que se llame regados, por decirlo de alguna manera 

$ mkdir  /media/2BE6-A889/regados


y finalmente el comando 

$ for b in `ls`; do cp $b/*.deb regados/ ; done

en donde hacemos uso de los ciclos repetitivos, el ciclo  for  le asignaremos a la variable b lo que me retorne el comando ls, osea la lista de todas las carpetas que les mostre en la primera imagen, y dentro de este hacemos la copia de todos los archivos .deb que estan en la carpeta que estemos manipulando en ese momento a regados. espero puedan aplicar en otra cosa este comando