Wie kann ich diese beiden Dateisuchen mit Bash durchführen?

Wie kann ich diese beiden Dateisuchen mit Bash durchführen?

wie kann ich eine solche Suche in der Bash-Shell durchführen?

1) Suche alle Dateien, deren Name mit beginntmysql-(und dann etwas anderes) in einen bestimmten Ordner (und alle seine Unterordner)

2) Suchen Sie in einigen Dateien (Konfiguration\Text) in einem bestimmten Ordner nach Inhalten, die mit beginnenmysql-(und dann noch etwas)

Antwort1

Ihre Frage ist etwas verwirrend, ich verstehe sie jedoch folgendermaßen:

1) Sie möchten alle Dateien finden, die mysql-in einem bestimmten Ordner (Verzeichnis) und dessen Unterbaum beginnen:

find <your directory here> -name "mysql-*"

2) Suchen Sie alle Dateien im angegebenen Verzeichnis, die Folgendes enthalten mysql-:

cd <your directory here> && grep -R mysql- *

wenn Sie wirklich nur Dateinamen möchten, fügen Sie einen Ausschneidefilter hinzu:

cd <your directory here> && grep -R mysql- * | cut -d ":" -f1 | sort | uniq

Antwort2

  1. Verwenden Sie findden Befehl:

    find MYDIR -iname mysql-* -type f
    
  2. Verwenden Sie grepden Befehl:

    grep -rn 'mysql-' MYDIR
    

verwandte Informationen