¿Hay un comando que no solo eche su argumento sino que también lo escape si es necesario (por ejemplo, si un argumento contiene un espacio en blanco o un carácter especial)?echo that shell-escapes arguments
Lo necesitaría en alguna magia de concha donde en lugar de ejecutar un comando en una secuencia de comandos hago eco del comando. Esta salida se canaliza a una secuencia de comandos python que finalmente ejecuta los comandos de una manera más eficiente (carga el método main() del script de python de destino real y lo ejecuta con los argumentos dados y un parámetro adicional mediante datos calculados por la bruja se almacena en caché entre carreras de main()).
En lugar de eso, podría, por supuesto, portar toda la magia de la concha a Python, donde no necesitaría canalizar nada.
Gracias, yo no sabía nada de eso. Si usa zsh, también puede usar el modificador 'q':' $ {(q) VAR} 'escapa de la variable de forma similar. – ZyX
Gracias, pero al usar printf tendría que saber la cantidad de argumentos por adelantado. Bueno, supongo que descubro algo. – panzi
Er, ¿hay alguna razón por la que no puedas hacer algo como 'for arg in" $ @ "; hacer printf% q "$ arg"; hecho'? – Cascabel