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.
Ci sono questi due nomi: una subshell e una child-shell . Sì, un processo figlio verrà avviato da uno di questi: sh -c 'echo "Hello"' ( echo "hello" ) echo "$(echo "hello") echo "hello" | cat Sono tutti equivalenti e condividono lo stesso nome? Tutti condividono le stesse proprietà? POSIX …
Mi chiedo solo perché non funziona #!/bin/bash ls /bin ls !$ Mi aspetto di correre ls /bindue volte, ma il secondo genera errori in quanto !$non interpretato Mi sono perso qualcosa o ho !$lavorato solo nella riga di comando? Non sono riuscito a trovare la parte rilevante in man bash(su …
Come creare un alias che estende effettivamente un altro alias con lo stesso nome in Bash? Perché: Ho usato per avere GREP_OPTIONSimpostato su .bashrca qualcosa di simile: GREP_OPTIONS="-I --exclude=\*~" Avevo anche una sceneggiatura (diciamo così setup-java.sh) che avrei chiamato prima di lavorare su alcuni progetti Java. Conterrebbe la riga: GREP_OPTIONS="$GREP_OPTIONS …
Sto cercando di creare un alias bash, in cui l'alias stesso ha uno spazio al suo interno. L'idea è che l'alias (cioè con) sta per sudo openvpn --config /path/to/my/openvpn/configs/. Il risultato è un comando leggibile, quando conviene utilizzato l' alias. vale a dire: `con uk.conf` == `sudo openvpn --config /path/to/my/openvpn/configs/uk.conf` …
Per leggere dal descrittore di file 6 posso usare <&6o </dev/fd/6(aka /proc/self/fd/6). Di solito entrambi funzionano ugualmente bene. Tuttavia, se quel descrittore di file risulta essere un socket, accadono cose strane. Per esempio: $ bash -c 'ls -l /dev/fd/6;cat /dev/fd/6' 6</dev/tcp/localhost/12345 lrwx------ 1 michas michas 64 Jan 10 19:50 /dev/fd/6 …
Questa è una copia del mio post da StackOverflow; Mi rendo conto che avrei dovuto chiedere qui ... Voglio eseguire uno script che cambi il nome host e che il mio prompt di bash (variabile PS1) si aggiorni immediatamente con il nome host appropriato. Come posso farlo accadere? Corro questo …
Penso di averlo notato prima, ma non ci ho mai pensato molto; ora sono curioso. > ldd /bin/bash linux-vdso.so.1 => (0x00007fff2f781000) libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f0fdd9a9000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f0fdd7a5000) libc.so.6 => /lib64/libc.so.6 (0x00007f0fdd3e6000) /lib64/ld-linux-x86-64.so.2 (0x00007f0fddbf6000) Libtinfo fa parte di ncurses. Questo è un sistema fedora, ma è lo stesso su …
Vorrei controllare, in uno script bash, su quale tipo di filesystem è una directory. L'idea è qualcosa di simile if [path] is on a [filesystem] filesystem then filesystem specific command end if
Ho un file chiamato con YYYYMMDDil nome del file, ad esempio file-name-20151002.txt Voglio determinare se questo file è stato modificato dopo il 02-10-2015. Appunti: Posso farlo guardando l'output di ls, ma so che analizzare l'output di lsè una cattiva idea. Non ho bisogno di trovare tutti i file datati dopo …
Il file file1.txt contiene righe come: /api/purchase/<hash>/index.html Per esempio: /api/purchase/12ab09f46/index.html Il file file2.csv contiene righe come: <hash>,timestamp,ip_address Per esempio: 12ab09f46,20150812235200,22.231.113.64 a77b3ff22,20150812235959,194.66.82.11 Voglio filtrare file2.csv rimuovendo tutte le righe in cui il valore di hash è presente anche in file1.txt. Questo è da dire: cat file1.txt | extract <hash> | sed …
Devo passare da una stringa a un array in cui ogni voce è ogni parola su quella stringa. Ad esempio, a partire da: VotePedro="Vote for Pedro" Ho bisogno dell'array: Vote For Pedro Che dovrei quindi essere in grado di ripetere come: for i in "${votePedroArray[@]}" do ## Do something done
Ho uno script di shell con loop nidificati e ho appena scoperto che "exit" in realtà non esce dallo script, ma solo il loop corrente. Esiste un altro modo per uscire completamente dallo script a una determinata condizione di errore? Non voglio usare "set -e", perché ci sono errori accettabili …
Ho una variabile multilinea e voglio solo la prima riga in quella variabile. Il seguente script dimostra il problema: #!/bin/bash STRINGTEST="Onlygetthefirstline butnotthesecond orthethird" echo " Take the first line and send to standard output:" echo ${STRINGTEST%%$'\n'*} # Output is as follows: # Onlygetthefirstline echo " Set the value of the …
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.