Eine Schulaufgabe wird bewertet, indem eine Ausgabe aus einem Python-Skript gedruckt und als Argument an ein kleines c-Programm übergeben wird. Leider enthält die Ausgabezeichenfolge von Python eine Registerkarte und bash erkennt sie als zwei Zeichenfolgen anstelle von einer. Wie kann ich es als eine Zeichenfolge erkennen lassen? Beachten Sie, dass ich keine Änderungen am C-Programm vornehmen kann.Übergeben der Ausgabe eines Python-Skripts, das Registerkarten als Argument in bash enthält
ein minimales Beispiel ist wie folgt:
#include <stdio.h>
#include <string.h>
int main(int argc, char **argv)
{
if (argc != 2) {
puts("Fail!");
return 1;
}
puts("Success!");
return 0;
}
Und die Ausgabe:
$ ./a.out $(python -c 'print "\'a\tb\'"')
Fail!
Dies ist wirklich eine Bash-only Frage; es hat nichts mit Python oder C zu tun –