#!/bin/bash LOCK=/run/lock/gtk-bookmark-update-lock BOOKMARKS=/root/.gtk-bookmarks # make sure to avoid parallel execution by using mkdir as lock while true; do mkdir $LOCK 2>/dev/null if [ $? = 0 ]; then break fi done cat $BOOKMARKS | fgrep -v ///media/ | fgrep -v "file:/// /" | egrep -v '^$' > $BOOKMARKS.tmp 2>/dev/null ls -1 /media | sort | while read LINE; do echo "file:///media/$LINE $LINE" >> $BOOKMARKS.tmp done echo "file:/// /" >> $BOOKMARKS.tmp # add root at the beginning mv -f $BOOKMARKS.tmp $BOOKMARKS rmdir $LOCK