Volevo solo chiedere se esiste un comando che funzioni su shell comuni (bash, dash, kornshell)? Dovrebbe controllare se la line
variabile contiene qualsiasi parte del percorso.
if [[ $line =~ "$PWD"$ ]] ;then
Risposta accettata:
Sì, le versioni recenti di bash possono farlo:
$ pwd
/home/terdon
$ line="I'm in /home/terdon"
$ [[ "$line" =~ "$PWD"$ ]] && echo yes
yes
La stessa sintassi funziona in zsh e ksh ma non in dash. Per quanto ne so, dash non ha tali capacità.
Nota che la tua regex sta controllando se la variabile $line
finisce con $PWD
. Per verificare se $PWD
corrisponde ovunque in $line
, rimuovi il $
:
$ line="I'm in /home/terdon, are you?"
$ [[ "$line" =~ "$PWD" ]] && echo yes
yes