function __fish_cache_put set -l cache_file $argv[1] touch $cache_file set -l dir (path dirname $cache_file) chown --reference=$dir $cache_file 2>/dev/null || chown ( stat --format '%u:%g' $dir 2>/dev/null || stat -f '%u:%g' $dir ) $cache_file end