Perguntas com a marcação «shell-script»

Perguntas sobre scripts de shell, arquivos executáveis ​​que são interpretados por um shell (bash, zsh, etc.).

1
O que "set -" faz neste ponto de entrada do Dockerfile?
Estou tentando entender o que esse ponto de entrada do Docker faz . Parece-me que esse é um padrão muito comum ao escrever Dockerfiles, mas minhas habilidades no bash são limitadas e não tenho idéia de todos os símbolos especiais do bash kung fu. Além disso, é difícil pesquisar no …
41 shell-script  set 


5
Substituir variáveis ​​de ambiente em um arquivo por seus valores reais?
Existe uma maneira fácil de substituir / avaliar variáveis ​​de ambiente em um arquivo? Como, digamos, eu tenho um arquivo config.xmlque contém: <property> <name>instanceId</name> <value>$INSTANCE_ID</value> </property> <property> <name>rootPath</name> <value>/services/$SERVICE_NAME</value> </property> ... etc Desejo substituir $INSTANCE_IDno arquivo o valor da INSTANCE_IDvariável de ambiente $SERVICE_NAMEpelo valor da SERVICE_NAMEvar env. Não vou saber …


3
Teste se uma sequência contém uma substring
Eu tenho o código file="JetConst_reco_allconst_4j2t.png" if [[ $file == *_gen_* ]]; then echo "True" else echo "False" fi Eu testei se filecontém "gen". A saída é "False". Agradável! O problema é quando substituo "gen" por uma variável testseq: file="JetConst_reco_allconst_4j2t.png" testseq="gen" if [[ $file == *_$testseq_* ]]; then echo "True" else …

2
Unindo argumentos bash em uma única string com espaços
Estou tentando associar todos os argumentos a uma função Bash em uma única seqüência de caracteres com espaços que separam cada argumento. Também preciso que a string inclua aspas simples em toda a string. Aqui está o que eu tenho até agora ... $array=("$@") str="\'" for arg in "${array[@]}"; do …

2
Como o awk '! A [$ 0] ++' funciona?
Esse alinhamento remove linhas duplicadas da entrada de texto sem pré-classificação. Por exemplo: $ cat >f q w e w r $ awk '!a[$0]++' <f q w e r $ O código original que encontrei nas internets dizia: awk '!_[$0]++' Isso foi ainda mais desconcertante para mim, pois eu _tive …




2
Por que usar && 75 vezes mais rápido do que se… fi e como tornar o código mais claro
Eu tenho o seguinte código de trabalho: largest_prime=1 for number_under_test in {1..100} do is_prime=true factors='' for ((divider = 2; divider < number_under_test-1; divider++)); do remainder=$(($number_under_test % $divider)) [ $remainder == 0 ] && [ is_prime ] && is_prime=false && factors+=$divider' ' done [ $is_prime == true ] && echo "${number_under_test} …


2
O que significa "$ {- # * i}"! = "$ -" significa?
No /etc/profileque vejo isso: for i in /etc/profile.d/*.sh ; do if [ -r "$i" ]; then if [ "${-#*i}" != "$-" ]; then . "$i" else . "$i" >/dev/null 2>&1 fi fi done O que ${-#*i}significa isso ? Não consigo encontrar uma definição de início de expansão de parâmetro ${-.



Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.