
Estoy intentando personalizar un perfil de compilación en un editor de texto sublime.
Mi objetivo es llegar al intérprete de Python en un entorno virtual, si lo hago
{
"shell_cmd": "~/Desktop/generalPyProjects/venv/bin/python -u \"$file\""
}
Funciona muy bien, sin embargo, lo que quiero hacer es que la ruta sea relativa (bueno, al menos semi-relativa) para poder usar el mismo perfil de edificio sin cambios, siempre y cuando esté en la raíz. directorio del proyecto. Creo que mirar el siguiente código le dirá lo que estoy tratando de lograr.
{
"shell_cmd": "$PWD/venv/bin/python -u \"$file\""
}
Aquí, estoy tratando de usar la variable del sistema (al menos así la llamo, soy un poco nuevo en el mundo de Linux, por lo que la redacción probablemente sea incorrecta), en lugar de la ruta de la carpeta raíz del proyecto. De modo que abriré la carpeta del proyecto a través de texto sublime y, utilizando este perfil de compilación, podré ejecutar mis scripts.
Sin embargo, resulta que usarlo $PWD
así no funciona. Mientras estoy en bash, echo $PWD
aparece una bonita forma de cadena del directorio de trabajo actual, sin embargo, no estoy seguro de cómo hacerlo en un script.
Entonces, ¿cómo puedo hacerlo?
Respuesta1
La variable $PWD
está relacionada con el cd
comando. Hace referencia al directorio actual, pero posiblemente mediante una ruta que no esté normalizada.
Sólo necesita el directorio actual y no le importa la ruta exacta al mismo.
El directorio actual se llama simplemente .
(un punto), al igual que se llama al directorio principal ..
(dos puntos).
Entonces puedes reemplazar $PWD
by .
y debería funcionar.