O que significa ./ no Unix / Linux [duplicado]

1

Isto pode parecer errado, mas eu sei que usando ./ você está basicamente "BASH" inserindo seus scripts no ambiente Linux / Unix. Para usuários do Windows, isso é o mesmo que executar um arquivo .exe no prompt de comando. No entanto, não entendo porque uso ./

É porque ./ significa "RUN" em resumo ou "./" tem um significado específico no ambiente semelhante ao UNIX?

P.S. Eu sei que o cygwin permite que você execute arquivos em lote usando o prefixo ./

    
por hagubear 21.10.2014 / 16:14

2 respostas

3

./file é funcionalmente equivalente a file em todas as circunstâncias, exceto uma.

A exceção é que um comando ou script sem diretório faz com que o shell pesquise todos os diretórios na variável PATH , que geralmente não inclui o diretório atual.

Portanto, para executar um executável a partir do diretório atual, você precisa especificar um caminho e ./ é a maneira mais simples de fazer isso.

No Windows, o equivalente .\ é desnecessário porque o diretório atual é pesquisado implicitamente.

    
por 21.10.2014 / 16:26
0

. indica o diretório atual - a pasta em que você está e / é um separador de diretório, separa um nome de diretório pai de seus arquivos filhos ou de outros subdiretórios, por exemplo: /bin/bash - here / é o diretório raiz, bin/ é o subdiretório e bash é um arquivo (como você vê, não há nenhum separador nos nomes dos arquivos, pois eles não podem ter nós filhos)

é tudo igual no windows (dos), espere que o caractere separador seja barra invertida ( \ )

    
por 21.10.2014 / 16:26

Tags