Home  >  Article  >  Operation and Maintenance  >  Linux operation and maintenance shell variables.md

Linux operation and maintenance shell variables.md

齐天大圣
齐天大圣Original
2020-06-24 09:30:141974browse

We know that there are many variables in the shell, such as the PATH variable that we often use. Its function is to set the directory of the executable file, so that you do not need to use the absolute path when entering commands. In addition, the shell has many other variables. Today, let’s discuss shell variables with you.

Classification

We know that there is a distinction between local variables and global variables in php. The shell is very similar to php. There are environment variables, Ordinary variables. Environment variables are generally used to define the running environment of the shell, while ordinary variables are often used in writing shell scripts.

The difference between environment variables and ordinary variables is very similar to PHP variables: the difference is the scope of use. Shell environment variables can be used in the current shell and derived shells, while ordinary variables can only be used in The current shell is used. Environment variables usually use uppercase, and ordinary variables usually use lowercase.

Environment variables

To view all current environment variables, use the env (environment) command

# env
XDG_SESSION_ID=38135
HOSTNAME=iz8vb626ci0aehwsivxaydz
TERM=xterm
SHELL=/bin/bash
HISTSIZE=1000
SSH_CLIENT=114.106.186.229 31955 22
QTDIR=/usr/lib64/qt-3.3
……

In addition You can use the set command to view it, but this command will list all environment variables and ordinary variables. Generally, environment variables are represented by uppercase letters.

Setting and canceling environment variables

The user-defined way to set environment variables is as follows

export 变量名=变量值

If you want to cancel environment variables , you can use the unset command to complete

unset 变量名

Let’s demonstrate below:

# export HOBBY=basketball
# env | grep HOBBY
HOBBY=basketball

# unset HOBBY
# env | grep HOBBY

Printing and setting of variables

There is an echo command under Linux. The usage method is the same as PHP. It is used to print a piece of text.

# echo hello,world
hello,world

# echo -e "$PWD\n$PATH"
/root
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

Variable setting rules,

变量名=变量内容
  • Note "=" There cannot be spaces on both sides

  • The variable name can only It is letters and numbers, and the first character cannot be a number

  • If the variable content has spaces, you need to use quotation marks (single quotation marks, double quotation marks) to enlarge the variable content, such as name=" lebron james". Variables can be parsed within double quotes.

  • If there are special characters, you can use \ to escape them, such as enter, ', " and other special characters

  • If you want to use the command results As the variable content, you can use $(command) or command;

  • If you want to expand the variable content, you can use "{$variable}accumulated content"

array

Like PHP, shell variables also have array types. The definition syntax of an array is as follows:

变量名=(val1 val2 ... valn);
arr=(paul james durant)

The syntax for printing array elements is as follows

echo ${arr[元素下标]}
# echo ${arr[0]}
paul
# echo ${arr[1]}
james

Print all elements of the array

echo ${arr[@]}

Print the length of the array

echo ${#arr[@]}

Print the length of the array elements

echo ${#arr[数组下标]}

Print some elements of the array ${lnmp[@]:n1:n2} n1 represents the start, n2 represents the length

# 打印所有元素
# echo ${lnmp[@]}
linux nginx mysql php
# echo ${lnmp[@]:0}
linux nginx mysql php
 
# 打印从第二个元素开始的所有值
# echo ${lnmp[@]:1}
nginx mysql php
 
# 打印第一个值和第二个值
# echo ${lnmp[@]:0:2}
linux nginx
 
# 打印第二个值和第三个值
# echo ${lnmp[@]:1:2}
nginx mysql

Assignment, replacement and deletion of array

#追加元素
# lnmp[${#lnmp[@]}]=apache
# echo ${lnmp[@]}
linux nginx mysql php apache
 
# 修改元素
# lnmp[0]=l
# echo ${lnmp[@]}
linux nginx mysql php
 
# 删除元素
unset lnmp[0]
unset lnmp[1]
unset lnmp

The above is the detailed content of Linux operation and maintenance shell variables.md. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn