Se hace con ls, pero ni idea que opción hay que poner.
Ayuda de terminal:
tengo una carpeta con muchos archivos y subdirectorios, me gustaria un comando que me listara todas las subcarpetas que contengan una o mas mayusculas (puede contener minusculas, pero lo importante es que tenga una o mas mayusculas), solo carpetas, no archivos
Comandos para buscar ficheros y carpetas en Linux | Blog of SysAdmins
Eso de arriba creo que no busca mayus, pero puede buscar cosas que abristes hace 24h o menos de 24h
Comando Find
Despues esta eso, en una parte pone:
Un aviso: como ya sabrás, los sistemas Linux son sensibles a las mayúsculas y minúsculas. Las búsquedas anteriores no muestran archivos en los que el texto AVI este escrito en mayúsculas. ¿Cómo hacer una búsqueda que englobe todos los archivos sin distinciones de mayúsculas/minúsculas? Sustituimos -name por -iname.
find /home -iname '*.mpg' -o -iname '*.avi'
Guía de comandos en GNU/Linux Mirate eso tambien del asterisco y la interrogacion
Y lo del -i que hace que no eches cuenta a las mayus que ya lo han dicho en las paginas aquellas -i ignora la distinción entre mayúsculas y minúsculas.
No se si te he ayudado, no tengo linux, lo que he hecho es googlear un poco, cual es tu situación? qué te pasa¿? sabes algo del nombre de la carpeta?
@AkraiCódigo:ls -d */ | grep -o '[^ ]*[A-Z][^ ]*'
no funciona porque no busca en todos los subdirectorios, quiero que busque en todos los subdirectorios de esa carpetaEl mensaje está oculto porque el usuario está en tu lista de ignorados.
@AkraiCódigo:ls -lR | grep '^d' | grep -o '[^ ]*[A-Z][^ ]*'
eso si funciona pero se podria hacer que muestre la ruta de cada carpeta en vez de solo el nombre de la carpeta?El mensaje está oculto porque el usuario está en tu lista de ignorados.
venga @J.M.Statham , ayudame con eso ultimo![]()
@Akrai no sé si lo habrás podido solucionar al final, pero no he podido estar en el ordenador hasta ahora. Como no sabia hacerlo con la ruta entera, he hecho un script en php:
Tienes que tener php instalado, copia esto en un archivo de texto y lo guardas como elnombrequequieras.php
Para ejecutarlo haz cd al directorio donde lo guardes, y: php nombrequelehayasdado.php /directorio/donde/querias/buscar
O sino, guardalo en el directorio donde querias hacer la busqueda, cd hasta ese directorio, y: php nombrequelehayasdado.php $PWD
[PHP]<?php
function buscar_directorios($directorio){
$a = Array();
foreach(glob($directorio."/*", GLOB_ONLYDIR) as $dir){
$a[]=$dir;
}
return $a;
}
function main($dir_a){
for($x=0;$x<count($dir_a);$x++){
if(preg_match("/[A-Z]/", basename($dir_a[$x]))){
echo $dir_a[$x]."\n";
}
$jeje = buscar_directorios($dir_a[$x]);
if( !empty($jeje) ){
main($jeje);
}
}
}
main(buscar_directorios($argv[1]));
?>[/PHP]
vale, gracias, voy a probarEl mensaje está oculto porque el usuario está en tu lista de ignorados.
por cierto, esto se hubiera podido hacer igual pero con c++?
hombre, yo lo decia porque es el unico lenguaje que he estudiado y porque ya tenia el g++ instalado para compilar xD de todas formas nunca he visto un programa de c++ que interactue con el exterior del programa (otros archivos) asi que ni idea de como se hariaEl mensaje está oculto porque el usuario está en tu lista de ignorados.
Ten en cuenta que C++ es una extensión de C, y C es un lenguaje de programación de nivel bajo... así que puedes hacer prácticamente de todo con él.El mensaje está oculto porque el usuario está en tu lista de ignorados.
Comando tree: The Tree Command for Linux HomepageEl mensaje está oculto porque el usuario está en tu lista de ignorados.