Domande sull'uso delle funzioni nel contesto di Unix e Linux (principalmente ma non esclusivamente script di shell). Domande sulla programmazione in Python, Perl, Ruby, ecc. Dovrebbero essere poste su Stack Overflow.
Dati 1 \begin{document} 3 Codice #!/bin/bash function getStart { local START="$(awk '/begin\{document\}/{ print NR; exit }' data.tex)" echo $START } START2=$(getStart) echo $START2 che ritorna 2ma voglio 3. Cambio senza successo la fine con questa risposta su Come posso aggiungere numeri in uno script bash : START2=$((getStart+1)) Come puoi incrementare …
Ho definito una bashfunzione nel mio ~/.bashrcfile. Questo mi permette di usarlo nei terminali shell. Tuttavia, non sembra esistere quando lo chiamo all'interno di uno script. Come posso definire una bashfunzione da usare anche con gli script?
Esiste un modo per ridefinire una funzione bash in termini di vecchia definizione? Ad esempio, vorrei aggiungere il seguente blocco di codice al preambolo della funzione command_not_found_handle (), # Check if $1 is instead a bash variable and print value if it is local VAL=$(eval echo \"\$$1\") if [ -n …
L'uso di caratteri Unicode estesi è (senza dubbio) utile per molti utenti. Le shell più semplici (ash (busybox), dash) e ksh non funzionano con: tést() { echo 34; } tést Ma bash , mksh , lksh e zsh sembrano permetterlo. Sono consapevole che i nomi di funzioni valide POSIX utilizzano …
Negli script bash cerco di mantenere le mie variabili locali nelle funzioni ovunque io possa e quindi passare ciò di cui ho bisogno fuori dalle funzioni come muggito #!/bin/bash function FUNCTION() { local LOCAL="value" echo "$LOCAL" # return this variable } GLOBAL=$(FUNCTION) echo "$GLOBAL" Ma è possibile farlo includendo gli …
Ho una funzione per creare rapidamente un nuovo ramo SVN che assomiglia a questo function svcp() { svn copy "repoaddress/branch/$1.0.x" "repoaddress/branch/dev/$2" -m "dev branch for $2"; } Che uso per creare rapidamente una nuova filiale senza dover cercare e copiare incollare gli indirizzi e altre cose. Tuttavia, per il messaggio …
Ho uno script bash come di seguito che installa Zookeeper ma solo se non è già installato. ##zookeper installZook(){ ZOOK_VERSION="3.4.5" ZOOK_TOOL="zookeeper-${ZOOK_VERSION}" ZOOK_DOWNLOAD_URL="http://www.us.apache.org/dist/zookeeper/${ZOOK_TOOL}/${ZOOK_TOOL}.tar.gz" if [ -e $DEFAULT_INSTALLATION_DEST/${ZOOK_TOOL} ]; then echo "${ZOOK_TOOL} alreay installed"; exit 1; # <<<< here elif [ ! -e $DEFAULT_SOURCE_ROOT/${ZOOK_TOOL}.tar.gz ]; then wgetIt $ZOOK_DOWNLOAD_URL else echo "[info] : …
Osservando l'output di env, ho notato che esiste anche la seguente funzione. BASH_FUNC_mc%%=() { . /usr/share/mc/mc-wrapper.sh } Il contenuto del file /usr/share/mc/mc-wrapper.sh è il seguente. MC_USER=`id | sed 's/[^(]*(//;s/).*//'` MC_PWD_FILE="${TMPDIR-/tmp}/mc-$MC_USER/mc.pwd.$$" /usr/bin/mc -P "$MC_PWD_FILE" "$@" if test -r "$MC_PWD_FILE"; then MC_PWD="`cat "$MC_PWD_FILE"`" if test -n "$MC_PWD" && test -d "$MC_PWD"; then …
Ho un numero di funzioni definite nel mio .bashrc, intese per essere utilizzate in modo interattivo in un terminale. In genere li ho preceduti con un commento che descrive l'uso previsto: # Usage: foo [bar] # Foo's a bar into a baz foo() { ... } Questo va bene se …
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` …
Problema: Ho più funzioni e alias bash. Non riesco a ricordare tutti loro dalla parte superiore della mia testa, quindi di solito finisco per aprire il mio .bash_functionse .bash_aliasesfile per trovare quello che mi serve. Domande): Come posso elencare funzioni / alias disponibili dal prompt di bash? Posso documentare le …
Quindi sto modificando costantemente bashrc e ho un terminale aperto con una definizione di funzione funzionante, sebbene bashrc sia stato aggiornato con una definizione di funzione errata. (Perché la definizione non cambia fino a quando non ho sorgente la bashrc aggiornata) Come posso cercare la definizione della funzione di lavoro …
Ho un functionnel mio .bashrcfile. So cosa fa, aumenta di X molte directory concd Ecco qui: up() { local d="" limit=$1 for ((i=1 ; i <= limit ; i++)) do d=$d/.. done d=$(echo $d | sed 's/^\///') if [ -z "$d" ]; then d=.. fi cd $d } Ma puoi …
Genero spesso e registro molte funzioni bash che automatizzano molte delle attività che di solito svolgo nei miei progetti di sviluppo. Quella generazione dipende dai metadati del progetto a cui sto lavorando. Voglio annotare le funzioni con le informazioni del progetto che sono state generate, in questo modo: func1() { …
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.