The core import function downloads the $url parameter and
caches it to the file system. Finally, it sources
the downloaded script.
#!/usr/bin/env import
import "https://import.sh/string@0.2.0"
echo InPuT | string_upper
# INPUTUses the same download and caching infrastructure as import, but prints the
local file path instead of sourcing the file. This enables working with arbitrary
files such as scripts from other languages, simple data files, binary files, etc.
#!/usr/bin/env import
ruby "$(import_file https://import.sh/importpw/import/test/static/sum.rb)" 9 10 11 12
# 42Returns the operating system specific path to the cache directory for the given
$name. This function honors the XDG Base Directory
Specification
by utilizing the $XDG_CACHE_HOME environment variable, if defined. Otherwise it
falls back to using:
$HOME/Library/Cacheson macOS$LOCALAPPDATAon Windows$HOME/.cacheeverywhere else
#!/usr/bin/env import
import_cache_dir example
# /Users/nate/Library/Caches/example
XDG_CACHE_HOME=/cache import_cache_dir example
# /cache/exampleReturns the operating system specific path to the cache directory that files
imported using import are written to. This function returns the contents the
$IMPORT_CACHE environment variable, if defined. Otherwise it returns the result
of import_cache_dir import.sh.
#!/usr/bin/env import
import_cache_dir_import
# /Users/nate/Library/Caches/import.sh
IMPORT_CACHE=/tmp import_cache_dir_import
# /tmp