Domande specifiche per GNU Bourne Again SHell, al contrario di altre shell Bourne / POSIX. Per domande sulle shell Unix in generale, utilizzare invece il tag / shell.
Sono un po 'confuso su cosa fanno questi operatori in modo diverso quando usati in bash (parentesi quadre, parentesi quadre doppie e parentesi quadre). [[ , [ , ( , (( Ho visto la gente usarli su affermazioni come questa: if [[condition]] if [condition] if ((condition)) if (condition)
La seguente sintassi bash verifica se paramnon è vuota: [[ ! -z $param ]] Per esempio: param="" [[ ! -z $param ]] && echo "I am not zero" Nessun output e va bene. Ma quando paramè vuoto tranne uno (o più) caratteri di spazio, il caso è diverso: param=" " …
Apparentemente c'è una vulnerabilità (CVE-2014-6271) in bash: attacco di iniezione di codice di variabili ambientali appositamente predisposte per Bash Sto cercando di capire cosa sta succedendo, ma non sono del tutto sicuro di capirlo. Come può echoessere eseguito così com'è tra virgolette singole? $ env x='() { :;}; echo vulnerable' …
Nel mio ~/.bashrcfile risiedono due definizioni: commandA, che è un alias per un percorso più lungo commandB, che è un alias di uno script Bash Voglio elaborare lo stesso file con questi due comandi, quindi ho scritto il seguente script Bash: #!/bin/bash for file in "$@" do commandA $file commandB …
Ecco un esempio dell'uso cutdi suddividere l'input in campi utilizzando un delimitatore di spazio e di ottenere il secondo campo: cut -f2 -d' ' Come si può definire il delimitatore come una scheda, anziché uno spazio?
Se segui unix.stackexchange.com per un po ', dovresti ora sapere che lasciare una variabile non quotata nel contesto dell'elenco (come in echo $var) nelle shell Bourne / POSIX (zsh essendo l'eccezione) ha un significato molto speciale e non dovrebbe essere fatto a meno che tu non abbia un'ottima ragione per …
Sto lavorando su Mac OSX, quindi immagino che sto usando bash ...? A volte entro in qualcosa che non voglio essere ricordato nella storia. Come lo rimuovo?
Ho lasciato uno script in esecuzione su una macchina remota da quando ci lavoravo localmente. Posso connettermi tramite SSH alla macchina come lo stesso utente e vedere lo script in esecuzione ps. $ ps aux | grep ipcheck myuser 18386 0.0 0.0 18460 3476 pts/0 S+ Dec14 1:11 /bin/bash ./ipchecker.sh …
Usando i sistemi di controllo della versione mi infastidisce il rumore quando dice il diff No newline at end of file. Quindi mi chiedevo: come aggiungere una nuova riga alla fine di un file per sbarazzarsi di quei messaggi?
Ho un problema in cui se digito comandi molto lunghi in bash il terminale non visualizzerà ciò che sto digitando correttamente. Mi aspetto che se avessi un comando simile al seguente: username@someserver ~/somepath $ ssh -i /path/to/private/key myusername@something.someserver.com Il comando dovrebbe eseguire il rendering su due righe. Invece spesso si …
Vorrei cambiare un'estensione di file da *.txta *.text. Ho provato a usare il basenamecomando, ma ho problemi a cambiare più di un file. Ecco il mio codice: files=`ls -1 *.txt` for x in $files do mv $x "`basename $files .txt`.text" done Ricevo questo errore: basename: too many arguments Try basename …
Diciamo che ho il seguente alias in bash - alias ls='ls --color=auto'- e voglio chiamare ordinario lssenza opzioni. L'unico modo per farlo è quello di unalias, eseguire il comando e quindi di nuovo alias? O c'è qualche trucco o soluzione alternativa elegante?
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.