Un script shell pour se souvenir à nouveau du shell pipenv

introduction

* pipenv, l'utilisez vous? *

pipenv est un outil qui gère facilement et automatiquement les packages du projet et crée un environnement virtuel. C'est un logiciel très pratique qui fonctionne également avec pyenv.

Mais avez-vous une telle expérience?

Quand je l'ai exécuté, une erreur s'est produite, alors je l'ai mis avec pip, mais ce n'était tout simplement pas dans l'environnement virtuel ...

Je fais beaucoup.

Donc!

J'ai écrit un script shell qui pipenv shell quand cd où le Pipfile est

Avait fait

~/.bash_autopipenv


#!/bin/bash

function ispipenv()
{
if [ "$PIPENV_ACTIVE" == 1 ]; then
  :
else
  if [ -e "Pipfile" ]; then
      pipenv shell
  fi
fi
}

function pipenv_cd()
{
  \cd $@ && ispipenv
}

alias cd='pipenv_cd'

Les points sont les parties suivantes.

if [ "$PIPENV_ACTIVE" == 1 ]; then
   ...

Lorsque vous entrez dans l'environnement virtuel, vous utilisez la variable d'environnement PIPENV_ACTIVE à définir. Puisque PIPENV_ACTIVE n'est pas défini si vous n'êtes pas dans un environnement virtuel, il est évalué avec "$ PIPENV_ACTIVE" pour éviter les erreurs. Désormais, le shell pipenv ne fonctionnera pas lorsque vous serez dans l'environnement virtuel.

De plus, si \ cd dans pipenv_cd est changé en cd, Veuillez noter que pipenv_cd est appelé dans pipenv_cd et pipenv_cd y est appelé.

Toujours charger

Si vous ajoutez ce qui suit à .bash_profile ou .bashrc, il sera toujours lu, vous n'oublierez donc pas d'exécuter pipenv shell: ok_hand:

if [ -f ~/.bash_autopipenv ]; then
  . ~/.bash_autopipenv
fi

Résumé

--Fun pour créer votre propre bash avec shellscript: innocent: ―― Ensuite, n'oubliez pas de quitter!

Recommended Posts

Un script shell pour se souvenir à nouveau du shell pipenv
Je n'oublierai jamais comment écrire un script shell, n'oubliez pas! !!
Branche conditionnelle en raison de l'existence d'un fichier de script shell
Créez un script shell pour exécuter le fichier python plusieurs fois
Écrivez un script dans Shell et Python pour vous avertir dans Slack lorsque le processus est terminé
[Ubuntu] Comment exécuter un script shell
Créer un script shell pour écrire un journal
Souhaitez-vous créer un CV Twitter?
N'oubliez pas de fermer le fichier simplement parce qu'il se trouve dans un dossier temporaire
Ne demandez pas "Êtes-vous sûr de vouloir continuer à vous connecter"
[Python] Assurez-vous que la fonction reçue est une fonction définie par l'utilisateur
Notez ce que vous voulez faire à l'avenir avec Razpai
[OCI] Script Python pour obtenir l'adresse IP d'une instance de calcul dans Cloud Shell
Script Python qui peut vérifier l'état du serveur à partir du navigateur
Comment exécuter un programme Python à partir d'un script shell
[Linux] Copie des données de Linux vers Windows avec un script shell
Vous qui coloriez le journal pour le rendre plus facile à voir
Un script shell qui envoie simplement le résultat de l'exécution SQL
Combinez des listes dans un DataFrame avec des pandas
Traitez les fichiers du dossier dans l'ordre avec le script shell
Django Faites des choix uniquement pour l'établissement auquel vous appartenez
Publiez le script shell créé pour réduire les problèmes de création de LiveUSB sous Linux
Essayons un script shell
Traitez le contenu du fichier dans l'ordre avec un script shell
[Blender] Script pour vérifier si celui sélectionné est un mesh
Pour vérifier si la clé spécifiée se trouve dans le compartiment spécifié dans Boto 3
Comment faire une commande pour lire le fichier de paramètres avec pyramide
J'ai écrit un script pour vous aider à démarrer avec AtCoder à grande vitesse!
Vous ne voulez pas dire que vous avez créé un programme de reconnaissance faciale?
Un script qui renvoie 0, 1 attaché au premier Python prime
Comment trouver lorsque vous ne connaissez pas le répertoire d'installation Java