Exemplo 1
Neste exemplo, pegue uma variável e atribua o valor a ele. O valor é uma corda longa. Para ter o resultado da string em novas linhas, atribuiremos o valor da variável a uma matriz. Para garantir o número de elementos presentes na string, imprimiremos o número de elementos usando um comando respectivo.
S a = ”eu sou um estudante. Eu gosto de programar ”
$ arr = ($ a)
$ echo “ARR tem $ #arr [@] elementos.”
Você verá que o valor resultante exibiu a mensagem com os números do elemento. Onde o sinal '#' é usado para contar apenas o número de palavras presentes. [@] mostra o número do índice dos elementos da string. E o sinal "$" é para a variável.
Para imprimir cada palavra em uma nova linha, precisamos usar as chaves “%s '\ n”. '%s' deve ler a string até o fim. Ao mesmo tempo, '\ n' move as palavras para a próxima linha. Para exibir o conteúdo da matriz, não usaremos o sinal "#". Porque apenas traz o número total de elementos presentes.
$ printf “'%s' \ n” “$ arr [@]”
Você pode observar a partir da saída que cada palavra é exibida na nova linha. E cada palavra é citada com uma única cotação porque fornecemos isso no comando. Isso é opcional para você converter a string sem citações únicas.
Exemplo 2
Geralmente, uma corda é dividida em uma matriz ou palavras únicas usando guias e espaços, mas isso geralmente leva a muitas quebras. Usamos outra abordagem aqui, que é o uso de ifs. Este ambiente IFS lida com mostrar que uma corda é quebrada e convertida em pequenas matrizes. O IFS tem um valor padrão de "\ n \ t". Isso significa que o espaço, uma nova linha e uma guia podem passar o valor para a próxima linha.
Na instância atual, não usaremos o valor padrão de IFS. Mas, em vez disso, substituí -lo por um único caractere de newline, ifs = $ '\ n'. Então, se você usar espaço e guias, isso não fará com que a string quebre.
Agora pegue três cordas e guarde -as na variável de string. Você verá que já escrevemos os valores usando guias para a próxima linha. Quando você tira impressão dessas cordas, ela formará uma única linha em vez de três.
$ str = ”Eu sou um aluno
Eu gosto de programar
Minha linguagem favorita é .líquido.”
$ echo $ str
Agora é hora de usar o IFS no comando com o personagem Newline. Ao mesmo tempo, atribua os valores da variável à matriz. Depois de declarar isso, leve uma impressão.
$ Ifs = $ '\ n' arr = ($ str)
$ printf “%s \ n” “$ arr [@]”
Você pode ver o resultado. Isso mostra que cada string é exibida individualmente em uma nova linha. Aqui toda a string é tratada como uma única palavra.
Uma coisa é ser observada aqui: Depois que o comando for encerrado, as configurações padrão do IFS são novamente revertidas.
Exemplo 3
Também podemos limitar os valores da matriz a serem exibidos em todas as novas linhas. Pegue uma corda e coloque -a na variável. Agora converta -o ou armazene -o na matriz como fizemos em nossos exemplos anteriores. E simplesmente pegue a impressão usando o mesmo método descrito anteriormente.
Agora observe a sequência de entrada. Aqui usamos citações duplas na parte do nome duas vezes. Vimos que a matriz parou de exibir na próxima linha sempre que encontrar uma parada completa. Aqui a parada completa é usada após as citações duplas. Portanto, cada palavra será exibida em linhas separadas. O espaço entre as duas palavras é tratado como um ponto de ruptura.
$ x = (nome = ”Ahmad Ali, mas”. Eu gosto de ler. "Assunto favorito = biologia")
$ arr = ($ x)
$ printf “%s \ n” “$ arr [@]”
Como o ponto final é depois de "Butt", então a quebra da matriz é interrompida aqui. "Eu" foi escrito sem espaço entre o ponto final, por isso está separado do ponto final.
Considere outro exemplo de um conceito semelhante. Portanto, a próxima palavra não é exibida após o ponto final. Então você pode ver que apenas a primeira palavra é exibida como resultado.
$ x = (nome = "Shawa". "Assunto Fav" = "Inglês")
Exemplo 4
Aqui temos duas cordas. Tendo 3 elementos cada dentro dos parênteses.
$ ARAY1 = (Apple Banana Peach)
$ array2 = (cereja laranja de manga)
Então precisamos exibir o conteúdo de ambas as cordas. Declarar uma função. Aqui, usamos a palavra -chave "Typeset" e depois atribuímos uma matriz a uma variável e outras matrizes para outra variável. Agora podemos imprimir as duas matrizes, respectivamente.
$ a ()
Typeset -N FirstArray = $ 1 SecondArray = $ 2
Printf '%s \ n' 1st: “$ FirstArray [@]”
Printf '%s \ n' 2nd: “$ SecondArray [@]”
Agora, para imprimir a função, usaremos o nome da função com os dois nomes de strings, conforme declarado anteriormente.
$ a Array1 Array2
É visível do resultado que cada palavra de ambas as matrizes é exibida em uma nova linha.
Exemplo 5
Aqui uma matriz é declarada com três elementos. Para separá-las em novas linhas, usamos um tubo e um espaço citado com cochas duplas. Cada valor da matriz do respectivo índice atua como entrada para o comando após o tubo.
$ Array = (Linux Unix PostgreSQL)
$ echo $ Array [*] | tr ““ “\ n”
É assim que o espaço funciona na exibição de cada palavra de uma matriz em uma nova linha.
Exemplo 6
Como já sabemos, o funcionamento de "\ n" em qualquer comando muda as palavras inteiras depois dele para a próxima linha. Aqui está um exemplo simples para elaborar este conceito básico. Sempre que usamos "\" com ""n"" em qualquer lugar da frase, isso leva à próxima linha.
$ printf “%b \ n” “Tudo o que brilha é \ não ouro”
Então a frase é reduzida pela metade e deslocada para a próxima linha. Movendo -se em direção ao próximo exemplo, ""%b \ n"" é substituído. Aqui um ""-e"" constante também é usado no comando.
$ echo -e “Hello World! Eu sou novo aqui""
Portanto, as palavras após “\ n” são deslocadas para a próxima linha.
Exemplo 7
Usamos um arquivo Bash aqui. É um programa simples. O objetivo é mostrar a metodologia de impressão usada aqui. É um ""para loop"". Sempre que imprimimos uma matriz através de um loop, isso também leva à quebra da matriz em palavras separadas em novas linhas.
Para a palavra em $ a
Fazer
Eco $ word
feito
Agora vamos impressionar o comando de um arquivo.
Conclusão
Existem várias maneiras de alinhar seus dados de matriz nas linhas alternativas em vez de exibi -las em uma única linha. Você pode usar qualquer uma das opções fornecidas em seus códigos para torná -las eficazes.
"