Hello
I would like to know, programmatically, if the the directory created
when a tarball is decompressed exists or not. The tarball is in this
directory:
D:/Documents/msys2/opt/ewpi_test/share/ewpi/packages/foobar
So I want to execute with system() :
cd D:/Documents/msys2/opt/ewpi_test/share/ewpi/packages/foobar &&
dir_name=`tar tzf foobar.tar.gz | head -1 | cut -f1 -d"/"` && cd
$dir_name
If dir_name does not exists, cd will throw an error. I can use also a
test. The problem is not there anyway : when executed with system(),
dir_name is not known.
As there are problems, i first tried this test : using cygpath and
storing the result in a variable, then display this variable.
:
1) Directly in MSYS2 :
cygpath -u D:/Documents/msys2/opt/ewpi_test
returns of course :
/opt/ewpi_test
2) With this code :
char *cmd = "prefix=`cygpath -u D:/Documents/msys2/opt/ewpi_test` &&
echo $prefix";
printf("%d\n", system(cmd));
I have this message (in french) :
'prefix' n'est pas reconnu en tant que commande interne
ou externe, un programme exécutable ou un fichier de commandes.
Which can be translated as
'prefix' is not an internal command, or an external command, or a
executable program, or a command file
3) With this code (I execute the command with bash) :
char *cmd = "/bin/bash prefix=`cygpath -u
D:/Documents/msys2/opt/ewpi_test` && echo $prefix";
printf("%d\n", system(cmd));
I have this message (in french) :
Le chemin d'accès spécifié est introuvable.
which can be translated as
The specified access path can not be found
Does someone know how I can make the tests 2) a,d 3) as expected
(display the value /opt/ewpi_test like in 1) ?
thank you
Vincent Torri
_______________________________________________
Msys2-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/msys2-users