O que é o windows equivalente ao ln-s Unix symbolic link command?

estou a tentar seguir o seguinte tutorial para criar um ambiente de programa para a Biblioteca Twilio e App Engine.

Https://developers.google.com/appengine/articles/twilio

Estou bem até ao ponto em que diz:

Ligue a Biblioteca Twilio e as suas dependências ao seu projecto:

$ ln -s venv/lib/python2.7/site-packages/twilio .

$ ln -s venv/lib/python2.7/site-packages/httplib2 .

$ ln -s venv/lib/python2.7/site-packages/six.py .
Investiguei e parece que vou usar algo como

mklink /d venv\lib\python2.7\site-packages\twilio .

Se bem entendi, eu ... basicamente precisam entender o que significa o " .", pois esse é o alvo do link simbólico? Não tenho a certeza disso.)

Estou a usar cmd.exe para o shell e poderia realmente usar a ajuda de alguém que entende o Unix melhor do que I.

editar:

Depois de rever a minha pasta, a localização a seguir ao venv é venv\lib\site-packages. Já existem pastas para Twilio e httplib2 nesse ponto do diretório. Seis existe naquele momento em um arquivo chamado six.py.

a intenção do comando Unix é criar um link simbólico dessas pastas existentes para o directório de trabalho? Porque o que está a fazer é dizer-me que não posso criar ficheiros existentes tanto para o Twilio como para o httplib2. (Já existem pastas no diretório venv\lib \ pacotes do site,e ele vai me deixar fazer uma ligação simbólica para seis, mas então ele recursivamente cria 4500 mais camadas de profundidade de toda a pasta seis.)

Author: user2428118, 2013-06-22

2 answers

Tenta isto:

mklink /D .\ venv\lib\python2.7\site-packages\httplib2

Nota: mklink [opção] LINK TARGET (a ligação e o alvo são invertidos em comparação com o linux ln -s)

Sintaxe Do Comando Mklink:

O MKLINK tem 3 opções /D, / H E / J. também precisa de especificar a localização para o novo link simbólico e o caminho para o arquivo original ou Directorio.

/ D – usado para criar ligações simbólicas para directórios (d para directório)

/ H – usado para criar ligações duras (H para ligação difícil)

/ J-usado para criar junção da pasta (j para a junção)

a propósito, prefere sempre o mklink / D ao mklink / J . O Windows explorer irá excluir todo o conteúdo de uma junção (a última), enquanto que ao excluir um link de diretório (a primeira) ele irá apenas remover o link.

O ponto . é a pasta actual (de onde está a executar o comando). No exemplo acima, eu mudei para .\ para torná-lo explicito.

Para ficheiros : ligação útil.

Se não conseguir obter privilégios com /D, use uma ligação difícil (opção /H) :

mklink /H .\six.py venv\lib\python2.7\site-packages\six.py
 9
Author: Gauthier Boaglio, 2017-05-23 11:46:01

'.' representa a pasta actual, tanto em * nix-land como em Windows. Então esses comandos estão fazendo links simbólicos ali mesmo.
Estes seriam os mesmos que dizer:

ln -s venv/lib/python2.7/site-packages/twilio twilio

Ou no Windows (Vista, 7, 2008 e up):

mklink /d twilio venv\lib\python2.7\site-packages\twilio 

Onde

  • twilio é o alvo ou ligação para criar
  • venv\lib\python2.7\site-packages\twilio é a pasta de origem

Lembre-se que mklink tem a sintaxe soure | target oposta que ln -s tem.

ln é o código - >alvo
mklink objectivo - > fonte

 1
Author: SlightlyCuban, 2014-11-12 17:22:51