22 lines
		
	
	
		
			853 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			22 lines
		
	
	
		
			853 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
# Save (encrypted) password database to cloud storage
 | 
						|
#
 | 
						|
# Can be run manually or daily by enabling the corresponding systemd user
 | 
						|
# service and timer, i.e.
 | 
						|
#
 | 
						|
# `systemctl --user enable save-passwddb.service`
 | 
						|
# `systemctl --user enable save-passwddb.timer`
 | 
						|
 | 
						|
# https://unix.stackexchange.com/questions/100871/in-a-bash-if-condition-how-to-check-whether-any-files-matching-a-simple-wildcard
 | 
						|
if [ 0 -lt "$(ls $HOME/doc/*.kdbx 2>/dev/null | wc -w)" ]; then
 | 
						|
  rclone copy "$HOME/doc" google-drive:doc --include "*.kdbx"
 | 
						|
  rclone copy "$HOME/doc" google-drive:doc --include "*.kdbx.key"
 | 
						|
else
 | 
						|
  echo "No password database found, use the following commands to restore"
 | 
						|
  echo ""
 | 
						|
  echo "rclone copy google-drive:doc \"$HOME/doc\" --include \"*.kdbx\""
 | 
						|
  echo "rclone copy google-drive:doc \"$HOME/doc\" --include \"*.kdbx.key\""
 | 
						|
  exit 1
 | 
						|
fi
 |