github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/internal/tiltfile/api/shlex/__init__.py (about)

     1  def quote(s: str) -> str:
     2    """
     3    Returns a shell-escaped version of ``s``, which can be safely interpolated as
     4    a single token in a shell command.
     5  
     6    e.g.:
     7  
     8    .. code-block:: python
     9  
    10      mystring = "foo's bar"
    11  
    12      # bad - runs: `docker run -e foo=foo's bar myimage` (invalid shell - unmatched ')
    13      local('docker run -e foo=%s myimage' % mystring)
    14  
    15      # good - runs: `docker run -e foo='foo'"'"'s bar' myimage`
    16      #        which correctly sets $foo to "foo's bar"
    17      local('docker run -e foo=%s myimage' % shlex.quote(mystring))
    18    """
    19    pass