I haven’t posted in ages due to being generally slammed with work but this little piece I threw together was too good to forget about so I wanted to put it down.

If you work with a larger owncloud deployment and have a lot of users and allow file sharing, you may be curious to occasionally take a look at how many shares there are, who owns them, who they are shared with. This isn’t easy to get from the Web GUI but via the command line and mysql it isn’t bad at all.

So, login to mysql on the command line and then use your owncloud database; ie. (if your db name is “owncloud”)

use owncloud;

Then run the following:

select id, share_with, uid_owner, item_type, file_target from oc_share
INTO OUTFILE '/var/lib/mysql-files/shares.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';

Exit mysql command line and go to /var/lib/mysql-files and you will find a nicely formatted CSV file with a list of all shares and who they are shared with. The columns from left to right…

ID, Who it is shared with (one line per person/group), the person that owns the share, whether or not it is a file or folder, the name/location of the file/folder that is shared

Cheers…

1 of 1

One comment on: Owncloud 8,9,10 – List all Shares and Who Has Access – Save Results to CSV file

  1. 0E800
    Reply

    Instructional and to the point.
    Thank you for sharing the nifty code.

Leave a Reply to 0E800 Cancel reply

Your email address will not be published. Required fields are marked *