diff options
Diffstat (limited to 'apps/files/console/scan.php')
-rw-r--r-- | apps/files/console/scan.php | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/apps/files/console/scan.php b/apps/files/console/scan.php new file mode 100644 index 00000000000..70183fc888a --- /dev/null +++ b/apps/files/console/scan.php @@ -0,0 +1,31 @@ +<?php + +if (count($argv) !== 2) { + echo "Usage:" . PHP_EOL; + echo " files:scan <user_id>" . PHP_EOL; + echo " will rescan all files of the given user" . PHP_EOL; + echo " files:scan --all" . PHP_EOL; + echo " will rescan all files of all known users" . PHP_EOL; + return; +} + +function scanFiles($user) { + $scanner = new \OC\Files\Utils\Scanner($user); + $scanner->listen('\OC\Files\Utils\Scanner', 'scanFile', function($path) { + echo "Scanning $path" . PHP_EOL; + }); + $scanner->listen('\OC\Files\Utils\Scanner', 'scanFolder', function($path) { + echo "Scanning $path" . PHP_EOL; + }); + $scanner->scan(''); +} + +if ($argv[1] === '--all') { + $users = OC_User::getUsers(); +} else { + $users = array($argv[1]); +} + +foreach ($users as $user) { + scanFiles($user); +} |