Je voulais juste demander s'il existe une commande qui fonctionnerait sur les shells courants (bash, dash, kornshell) ? Il est censé vérifier si la line
variable contient n'importe quelle partie du chemin.
if [[ $line =~ "$PWD"$ ]] ;then
Réponse acceptée :
Oui, les versions récentes de bash peuvent le faire :
$ pwd
/home/terdon
$ line="I'm in /home/terdon"
$ [[ "$line" =~ "$PWD"$ ]] && echo yes
yes
La même syntaxe fonctionne dans zsh et ksh mais pas dans dash. Autant que je sache, dash n'a pas de telles capacités.
Notez que votre regex vérifie si la variable $line
se termine avec $PWD
. Pour vérifier si $PWD
correspond n'importe où dans $line
, supprimez le $
:
$ line="I'm in /home/terdon, are you?"
$ [[ "$line" =~ "$PWD" ]] && echo yes
yes