summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorBart Visscher <bartv@thisnet.nl>2013-08-02 15:36:54 +0200
committerBart Visscher <bartv@thisnet.nl>2013-08-02 15:36:54 +0200
commita7a05b321afd0085bd0e8c068c95e654d229e27c (patch)
treee375621e137a320c94087770239e79fe1f107c61 /apps
parent3500c39567617655710a5790485558e3731dae50 (diff)
downloadnextcloud-server-a7a05b321afd0085bd0e8c068c95e654d229e27c.tar.gz
nextcloud-server-a7a05b321afd0085bd0e8c068c95e654d229e27c.zip
Use console.php entry point for file scanning from console
Diffstat (limited to 'apps')
-rw-r--r--apps/files/console/scan.php35
1 files changed, 35 insertions, 0 deletions
diff --git a/apps/files/console/scan.php b/apps/files/console/scan.php
new file mode 100644
index 00000000000..118e586aea3
--- /dev/null
+++ b/apps/files/console/scan.php
@@ -0,0 +1,35 @@
+<?php
+
+if (!OC::$CLI) {
+ echo "This script can be run from the command line only\n";
+ return;
+}
+if (count($argv) !== 2) {
+ echo "Usage:" . PHP_EOL;
+ echo " php scanFiles.php <user_id>" . PHP_EOL;
+ echo " will rescan all files of the given user" . PHP_EOL;
+ echo " php scanFiles.php --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);
+}