J'ai réussi à installer Windows SUA (Subsystem for Unix Applications), dans Windows 7 Ultimate. Je peux exécuter les commandes dans c:\windows\sua\common
directement à partir de cmd.exe mais je veux essayer d'exécuter des commandes à partir du shell korn. Je vois ksh dans le menu Démarrer si je tapez ksh dans la zone de recherche. Mais j'ai une erreur lorsque j'essaie d'exécuter des commandes à partir de là.
Je vois si je clique sur Démarrer et tapez ksh, alors je vois ksh.bat qui est dans c: \ windows \ SUA \ common \ ksh.bat
Lorsque je cours ksh.bat et que j'écoute echo $PATH
Je vois des répertoires, y compris /dev/fs/C/Windows/SUA/common:/dev/fs/C/Windows/SUA/usr/lib
Et pour mémoire, j'ai ls.exe
ici
C:\Windows\SUA\common>dir ls.exe<ENTER> 01/18/2008 05:40 AM 174,592 ls.exe
Mais quand je cours ksh.bat alors j'essaie de lancer ls
, il dit
$ ls /bin/ksh: ls: not found $ cd $ $
Je vois maintenant dans le menu de démarrage qu'il y a une entrée "Sous-système pour les applications basées sur UNIX", mais par hasard, il n'a pas été mis en évidence avec une mise accent sur l'orange (ce que les nouvelles entrées font normalement), donc je ne l'ai pas remarqué. Ici, il est élargi.
Choisir Korn Shell à partir de là, l'ouvre. Il exécute la ligne C:\Windows\posix.exe /u /c /bin/ksh -l
Et puis, ça fonctionne
Alors que l'exécution de ksh.bat seule, ne fonctionne pas.
La différence entre cette ligne de commande et ksh.bat
Est-ce que ksh.bat posix /u /c /bin/ksh %1 %2 %3 %4 %5 %6 %7 %8 %9
si vous exécutez ksh.bat sans paramètres, cela équivaut à posix /u /c /bin/ksh
ie no -l
(c'est-à-dire no dash el)
Alors que le short short korn, fait la même ligne mais avec -l.
Si vous exécutez ksh -l alors, cela fonctionnerait ksh.bat avec -l et comme c: \ windows \ posix.exe est couvert dans le chemin, en regardant la ligne de commande utilisée par ksh.bat, c'est (quand avec – L) puis le même que ce que le raccourci fait, et fonctionne ainsi comme le raccourci fonctionne.
Donc, soit courez à partir du raccourci, soit exécutez le fichier bat avec ksh -l
Question antérieure Où sont les EXE pour le sous-système pour les applications Unix afin que je puisse l'utiliser?