Interceptação de variável no script de shell do Linux

Comando de interceptação de string Linux
reimpresso https://www.cnblogs.com/dalianpai/p/12702237.html

Quando escrevi a concha novamente hoje, senti que a interceptação da corda não era particularmente suave. Por fim, usei a corda de corte para obtê-la, então resolvi.

Definir variáveis

[root@iZ1la3d1xbmukrZ ~]# net=https://www.cnblogs.com/dalianpai/
[root@iZ1la3d1xbmukrZ ~]#

1. O sinal # é interceptado, o caractere esquerdo é excluído e o caractere direito é mantido.

[root@iZ1la3d1xbmukrZ ~]# echo ${net#*//}
www.cnblogs.com/dalianpai/
[root@iZ1la3d1xbmukrZ ~]#

Onde var é o nome de uma variável, o sinal # é um operador, * // significa excluir o primeiro // sinal e todos os caracteres à esquerda da esquerda, ou seja, excluir http: //

2. ## é interceptado, o caractere esquerdo é excluído e o caractere direito é retido.

[root@iZ1la3d1xbmukrZ ~]# echo ${net##*/}

[root@iZ1la3d1xbmukrZ ~]#

## * / significa excluir o último (extrema direita) / sinal e todos os caracteres à esquerda da esquerda para excluir o todo

3. O sinal% é interceptado, o caractere direito é excluído e o caractere esquerdo é mantido

[root@iZ1la3d1xbmukrZ ~]# echo ${net%/*}
https://www.cnblogs.com/dalianpai
[root@iZ1la3d1xbmukrZ ~]#

% / * significa começar da direita, excluir o primeiro / e os caracteres à direita

4. O sinal %% é interceptado, o caractere direito é excluído e o caractere esquerdo é retido

[root@iZ1la3d1xbmukrZ ~]# echo ${net%%/*}
https:
[root@iZ1la3d1xbmukrZ ~]#

%% / * significa começar da direita, deletando o último (extrema esquerda) / sinal e os caracteres à direita

5. Começando com os primeiros caracteres à esquerda e o número de caracteres

[root@iZ1la3d1xbmukrZ ~]# string="runoob is a great site"
[root@iZ1la3d1xbmukrZ ~]# echo ${string:0:${#string}-4}
runoob is a great

O 0 significa que o primeiro caractere da esquerda começa

6. Comece com os primeiros caracteres da esquerda e continue até o final.

[root@iZ1la3d1xbmukrZ ~]# echo ${net:7}
/www.cnblogs.com/dalianpai/
[root@iZ1la3d1xbmukrZ ~]#

O 7 representa o início do oitavo caractere da esquerda e continua até o fim.

7. Começando com os primeiros caracteres à direita e o número de caracteres

[root@iZ1la3d1xbmukrZ ~]# echo ${net:0-7:3}
ian
[root@iZ1la3d1xbmukrZ ~]#

Entre eles, 0-7 significa o sétimo caractere da direita e 3 significa o número de caracteres.

8. Comece com os primeiros caracteres da direita e continue até o final.

[root@iZ1la3d1xbmukrZ ~]# echo ${net:0-7}
ianpai/
[root@iZ1la3d1xbmukrZ ~]#

Indica começando do sétimo caractere da direita e continuando até o final.

Nota: (O primeiro caractere à esquerda é representado por 0, e o primeiro caractere à direita é representado por 0-1)

Acho que você gosta

Origin blog.csdn.net/weixin_44578029/article/details/111276393
Recomendado
Clasificación