Puoi aprire un PDF come variabile di Bash (espresso come percorso per il file) come questo.
-
Imposta la tua variabile:
pdf=/path/to/44592-linux-restricted-shell-bypass-guide.pdf
-
Apri il file in questo modo:
open "$pdf" -a Preview
Tuttavia, il tuo esempio indica che il file non esiste sul tuo filesystem. Se vuoi aprire un flusso di dati non elaborato memorizzato in una variabile, ti consiglio di echeggiare la tua variabile e collegarla a open
utilizzando l'opzione -f
come questa.
-
Definisci la tua variabile:
pdf=$(wget -qO- https://www.exploit-db.com/docs/english/44592-linux-restricted-shell-bypass-guide.pdf)
-
Apri i dati grezzi come stream dallo standard input:
echo $pdf | open -f -a Preview
Spiegazione:
Se memorizzi l'output di wget -qO- …
come variabile, invece di scaricare il file sul tuo filesystem, open
non saprà cosa fare mentre stai passando i dati del file raw piuttosto che il percorso del file . In man open
'file' si riferisce a un file apribile per l'applicazione data, la variabile nell'esempio non è quella. L'opzione -f
è utile in questo scenario poiché il tuo metodo di impostazione della variabile prevede la memorizzazione dell'intero flusso di file, che non verrà interpretato come un file da open
, e quindi può essere aperto solo come flusso di file.