Perguntas sobre 'test'

11
respostas

Como posso verificar se existe uma variável em uma instrução 'if'?

Eu preciso verificar a existência de uma variável em uma instrução if . Algo para o efeito de: if [ -v $somevar ] then echo "Variable somevar exists!" else echo "Variable somevar does not exist!" E a pergunta mais próxima disso...
25.06.2015 / 18:18
5
respostas

Como exatamente “/ bin / [” funciona?

Sempre me surpreendo que na pasta /bin exista um programa [ . É o que é chamado quando estamos fazendo algo como: if [ something ] ? Ao chamar o programa [ explicitamente em um shell, ele solicita um ] correspondente e, quando...
11.01.2017 / 08:55
7
respostas

O teste é [ou [[mais portátil entre os shells do bash e entre os outros shells?

Eu vejo que posso fazer $ [ -w /home/durrantm ] && echo "writable" writable ou $ test -w /home/durrantm && echo "writable" writable ou $ [[ -w /home/durrantm ]] && echo "writable" writable Eu gosto de...
16.11.2014 / 13:40
3
respostas

Como posso verificar se um arquivo é um link simbólico para um diretório?

Eu posso verificar se um arquivo existe e é um link simbólico com -L for file in *; do if [[ -L "$file" ]]; then echo "$file is a symlink"; else echo "$file is not a symlink"; fi done e se for um diretório com -d: for file in *; do...
21.10.2013 / 04:13
2
respostas

Erro no teste de suporte de shell quando string é um parêntese esquerdo

Eu costumava estar confiante no fato de que citar strings é sempre uma boa prática para evitar que o shell analise isso. Então me deparei com isso: $ x='(' $ [ "$x" = '1' -a "$y" = '1' ] bash: [: ')' expected, found 1 Tentando isolar o...
07.12.2016 / 10:44
8
respostas

Teste se existem arquivos correspondentes a um padrão para executar um script

Estou tentando gravar uma instrução if para testar se há arquivos correspondentes a um determinado padrão. Se houver um arquivo de texto em um diretório, ele deverá executar um determinado script. Meu código atualmente: if [ -f /*.txt ]...
13.06.2013 / 17:28
1
resposta

Bash se a declaração [: ausente ']' erro [duplicado]

Estou tendo problemas com o bash. Eu estou tentando colocar um comando em uma instrução if e, em seguida, compará-lo a uma seqüência de caracteres. Isso funciona perfeitamente. echo $(ipcs | grep Shared | awk '{print $2}') Quando...
09.10.2014 / 12:28
3
respostas

Qual é o objetivo do executável de colchetes?

Eu vejo que existe um executável chamado "[" em /usr/bin . Qual é o seu propósito?     
22.01.2016 / 16:07
2
respostas

Teste Bash: o que “= ~” faz?

#!/bin/bash INT=-5 if [[ "$INT" =~ ^-?[0-9]+$ ]]; then echo "INT is an integer." else echo "INT is not an integer." >&2 exit 1 fi O que o líder ~ faz na expressão regular inicial?     
27.01.2017 / 02:02
4
respostas

Testando se uma variável está vazia em um shell script

Eu vi a seguinte técnica usada muitas vezes em muitos shells diferentes, para testar se uma variável está vazia: if [ "x$1" = "x" ]; then # Variable is empty fi Existe alguma vantagem em usar isso sobre o mais canônico if [ -z "$1"...
20.02.2012 / 11:28