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.
Sto scrivendo uno script bash che usa ampiamente wget. Per definire tutti i parametri comuni in un unico posto, li memorizzo su variabili. Ecco un pezzo di codice: useragent='--user-agent="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0"' cookies_file="/tmp/wget-cookies.txt" save_cookies_cmd="--save-cookies $cookies_file --keep-session-cookies" load_cookies_cmd="--load-cookies $cookies_file --keep-session-cookies" function mywget { log "#!!!!!!!!!# WGET #!!!!!!!!!# …
Ad esempio, da alcuni comandi ho ricevuto alcune righe $ some-command John Bob Lucy Ora vorrei aggiungere il comando concatenamento, che modifica l'output. $ some-command | other-command Hi John Bye Hi Bob Bye Hi Lucy Bye Come scrivere other-command? (Sono un novizio a Bash)
Vorrei eseguire il backup di alcuni dei miei dati molto importanti su una macchina remota. Attualmente sto solo salvandolo sul mio computer locale usando questo comando:tar -cvjf ~/backups/Backup.tar.bz2 ~/importantfiles/* Preferirei non usare un altro comando per trasferirlo sulla macchina remota, il che significa che vorrei semplicemente aggiornare questo comando in …
Attualmente sto usando Debian 7 Wheezy e ho notato che la tavolozza dei colori sul terminale (che potrebbe essere utile per identificare tra un ampio set di file e cartelle) non è abilitata una volta effettuato l'accesso come root. Lo stesso, ho notato che il completamento della scheda non funziona …
Quando sto usando il seguente comando setenv CLASSPATH /path/mysql-connector-java-ver-bin.jar:$CLASSPATH l'errore è bash setenv command is not found Quando trovo il percorso di setenv con quale comando, ho trovato il seguente percorso (/usr/kerberos/sbin:/usr/kerberos/bin:/home/ec2/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/home/ec2/bin:/root/bin)
Diciamo che c'è una directory a cui non ho i privilegi per accedere. Ovviamente sudo cd foonon funzionerà, perché cdè una shell integrata in ogni shell di sempre. Finora ho appena usato sudo bash(sì, so che ci sono modi migliori) per ottenere un prompt di root. Quindi, posso cdentrare nella …
Ho la seguente funzione: bar() { echo $1:$2; } Sto chiamando questa funzione da un'altra funzione foo,. foosi chiama come segue: foo "This is" a test Voglio ottenere il seguente output: This is:a Cioè, gli argomenti che barriceve dovrebbero essere gli stessi token in cui passo foo. Come foodeve essere …
Ho seguito la sceneggiatura. #!/bin/bash mount /dev/sda6 /mnt/gentoo set +e cd /mnt/gentoo && mount -t proc none /mnt/gentoo/proc \ && mount --rbind /dev /mnt/gentoo/dev \ && mount --rbind /sys /mnt/gentoo/sys \ && chroot /mnt/gentoo /bin/bash \ && source /etc/profile \ && export PS1="(chroot)$PS1" Quello che sto cercando di realizzare qui …
Per qualche motivo ho effettuato l'accesso al mio server CentOS6 e all'inizio di ogni riga che mostra normalmente [root@hostname]# Ora mostra -bash-4.1# Cosa significa questo? E come posso riportarlo alla normalità?
Ho uno script per il completamento automatico dei miei host ssh. Se cambio il mio ~/.ssh/configcompletamento automatico, tuttavia, non viene aggiornato automaticamente. Questo non mi sorprende. In una nuova shell, la nuova voce viene acquisita e utilizzabile, ovviamente. Come posso attivare manualmente un aggiornamento del completamento in bash?
Ho uno ifscript nel mio bash che deve verificare se ESSO dei 2 file esiste, se non esistono dovrebbe corrispondere all'eco. Codice che ho: if [[ ! -f /etc/benchmarking/code ]] && [[ ! -f /etc/benchmarking/code.class ]]; then echo "match" fi Ma questo non sembra funzionare per qualche motivo. Sono sicuro …
Quindi sto scrivendo un piccolo gestore di pacchetti e un problema che ho riscontrato è creare collegamenti simbolici ai file. Installa il pacchetto /usr/pkg/name-versione quindi legge un file per determinare quali collegamenti simbolici creare. Sto usando lnper creare i collegamenti e ho riscontrato un problema durante il tentativo di installare …
Nel seguente script, Come posso escludere una directory nel ciclo? Voglio farlo perché tutti i file sono collegamenti simbolici che puntano a questa directory che esiste nello stesso livello, quindi non voglio aggiungerlo. cd /var/www for dir in */ do base=$(basename "$dir") tar -czfh "${base}.tar.gz" "$dir" done
Guarda questo se blocco: #!/bin/bash str="m.m" if [[ "${str}" =~ "m\.m" ]]; then echo "matched" else echo "not matched" exit 1 fi exit 0 Questo dovrebbe stampare "abbinato", ma non lo fa. Dove sto sbagliando?
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.