1. <?php
  2. /**
  3. * CLI tool to search content in configuration files.
  4. *
  5. * Usage: php search_config.php <search_term> <config_file1> [config_file2 ...]
  6. */
  7. if (count($argv) < 3) {
  8. echo "Usage: php search_config.php <search_term> <config_file1> [config_file2 ...]\n";
  9. exit(1);
  10. }
  11. $searchTerm = $argv[1];
  12. $configFiles = array_slice($argv, 2);
  13. foreach ($configFiles as $configFile) {
  14. if (file_exists($configFile)) {
  15. $fileContent = file_get_contents($configFile);
  16. if ($fileContent !== false) {
  17. $matches = preg_match_all('/' . preg_quote($searchTerm, '/') . '/', $fileContent, $matches);
  18. if ($matches > 0) {
  19. echo "Found '" . $searchTerm . "' in " . $configFile . ":\n";
  20. foreach ($matches[0] as $match) {
  21. echo $match . "\n";
  22. }
  23. } else {
  24. echo "Did not find '" . $searchTerm . "' in " . $configFile . "\n";
  25. }
  26. } else {
  27. echo "Error reading file: " . $configFile . "\n";
  28. }
  29. } else {
  30. echo "File not found: " . $configFile . "\n";
  31. }
  32. }
  33. ?>

Add your comment