-
Shell(Bash)小括号和大括号用法及区别
所属栏目:[Linux] 日期:2020-12-14 热度:135
在介绍小括号和大括号的用法及区别之前,我们先解释两个概念:父 Shell 和子 Shell。 在 Bash 中,是可以调用新的 Bash 的,比如: [root@localhost ~]# bash [root@localhost ~]# 这时,可以通过 pstree 命令査看一下进程数,命令如下: [root@localhost ~]#[详细]
-
Linux用户管理命令(groupadd、groupmod、groupdel、gpasswd、ne
所属栏目:[Linux] 日期:2020-12-14 热度:54
添加用户组的命令是 groupadd ,命令格式如下: [root@localhost ~]# groupadd [选项] 组名 选项: -g GID:指定组 ID 添加用户组的命令比较简单,举个例子: [root@localhost ~]# groupadd group1 #添加group1组 [root@localhost ~]# grep "group1" /etc/grou[详细]
-
Shell history详解:查看历史命令
所属栏目:[Linux] 日期:2020-12-14 热度:190
Bash 有完善的历史命令,这对于简化管理操作、排查系统错误都有重要的作用,而且使用简单方便,建议大家多使用历史命令。系统保存的历史命令可以使用 history 命令查询,命令格式如下: [root@localhost ~]# history [选项] [历史命令保存文件] 选项: -c:清[详细]
-
Shell脚本格式及运行方式详解
所属栏目:[Linux] 日期:2020-12-14 热度:143
做什么事情都会有第一次,我们学习语言的第一次就是写著名的"Hello world!"程序。命令如下: [root@localhost ~]# mkdir sh [root@localhost ~]# cd sh #建立Shell练习目录 [root@localhost sh]#vi hello.sh #The first program #!/bin/bash echo -e "c.bianc[详细]
-
Bash命令自动补全操作详解
所属栏目:[Linux] 日期:2020-12-14 热度:122
在 Bash 中,命令与文件补全是非常方便与常用的功能,我们只要在输入命令或文件时按 Tab,就会自动进行补全。 命令补全是按照 PATH 环境变量所定义的路径查找命令的(后续章节详细介绍),而文件补全是按照文件位置查找文件的。 比如,想要知道以 user 开头的[详细]
-
Linux echo详解:输出命令
所属栏目:[Linux] 日期:2020-12-14 热度:139
学习一种编程语言,写的第一个脚本都是打印"Hello world!",我们也写一个"Hello world!"脚本用来学习一下 Shell 脚本的运行方式。 在写脚本之前,我们需要学习一下 Linux 的打印命令 echo。该命令格式如下: [root@localhost ~]# echo [选项] [输出内容] 选项[详细]
-
Linux ACL访问控制权限完全攻略(超详细)
所属栏目:[Linux] 日期:2020-12-14 热度:89
在普通权限中,用户对文件只有三种身份,就是属主、属组和其他人;每种用户身份拥有读(read)、写(write)和执行(execute)三种权限。但是在实际工作中,这三种身份实在是不够用,我们举个例子来看看。 图 1 ACL权限简介 图 1 的根目录中有一个 /project[详细]
-
Linux fdisk命令创建扩展分区过程详解
所属栏目:[Linux] 日期:2020-12-14 热度:183
本节给大家展示如何建立一个扩展分区。还记得吗?主分区和扩展分区加起来最多只能建立 4 个,而扩展分区最多只能建立 1 个。 扩展分区的建立命令如下: [root@localhost ~]# fdisk /dev/sdb …省略部分输出… Command (m for help): n #新建立分区 Command ac[详细]
-
Linux fdisk命令创建逻辑分区过程详解
所属栏目:[Linux] 日期:2020-12-14 热度:163
扩展分区是不能被格式化和直接使用的,所以还要在扩展分区内部再建立逻辑分区。 我们来看看逻辑分区的建立过程,命令如下: [root@localhost ~]# fdisk /dev/sdb …省略部分输出… Command (m for help): n #建立新分区 Command action l logical (5 or over)[详细]
-
Shell(Bash)单引号、双引号和反引号用法详解
所属栏目:[Linux] 日期:2020-12-14 热度:124
单引号和双引号用于变量值出现空格时,比如 name=zhang san 这样执行就会出现问题,而必须用引号括起来,比如 name="zhang san"。 不过,引号有单引号和双引号之分,二者的主要区别在于,被单引号括起来的字符都是普通字符,就算特殊字符也不再有特殊含义;而[详细]
-
Shell read命令详解:接收键盘或其它文件描述符的输入
所属栏目:[Linux] 日期:2020-12-14 热度:52
前面讲过,位置参数变量是可以把用户的输入用参数的方式输入脚本的,不过这种输入方式只有写这个脚本的人才能确定需要输入几个参数,每个参数应该输入什么类型的数据,并不适合普通用户使用。 除位置参数变量外,我们也可以使用 read 命令向脚本中传入数据。r[详细]
-
Shell自定义快捷键方法详解
所属栏目:[Linux] 日期:2020-12-14 热度:85
首先,我们要学会查看 Shell 中已有快捷键的方法,如下所示: [root@localhost ~]# stty -a #查询所有的快捷键 speed 38400 baud; rows 21; columns 1.04; line = 0; intr = ^C; quit = ^; erase = ^?; kill = ^U; eof = ^D; eol = undef; eol2 = undef; swt[详细]
-
Shell PATH变量用法详解:系统查找命令的路径
所属栏目:[Linux] 日期:2020-12-14 热度:86
前面章节我们说过,程序脚本要想在 Linux 中运行,需要使用绝对路径或相对路径指定这个脚本所在的位置。但是为什么系统命令都没有指定路径而是直接执行的?比如,ls 命令并没有输入"/bin/ls"来执行,而是直接执行"ls"命令。这就是 PATH 环境变量的功能了。 先[详细]
-
Shell环境变量设置方法详解
所属栏目:[Linux] 日期:2020-12-14 热度:69
环境变量和用户自定义变量最主要的区别在于,环境变量是全局变量,而用户自定义变量是局部变量。用户自定义变量只在当前的 Shell 中生效,而环境变量会在当前 Shell 和这个 Shell 的所有子 Shell 中生效。如果把环境变量写入相应的配置文件,那么这个环境变量[详细]
-
Shell元字符(正则表达式)及其用法详解
所属栏目:[Linux] 日期:2020-12-14 热度:56
在正则表达式中,我们把用于匹配的特殊符号又称作 元字符 。在 Shell 中,元字符又分为 基础元字符 和 扩展元字符 。 基础元字符 我们先来看看到底有哪些基础元字符,如表 1 所示。 表 1 基础元字符 元字符 作?用 * 前一个字符匹配 0 次或任意多次 . 匹配除换[详细]
-
Shell数值运算方法(3种)
所属栏目:[Linux] 日期:2020-12-14 热度:97
Shell 编程和其他语言还是有很多不一样的地方的,其中笔者最不习惯的是:在 Shell 中所有的变量默认都是"字符串型"。也就是说,如果不手工指定变量的类型,那么所有的数值都是不能进行运算的。比如: [root@localhost sh]# aa=11 [root@localhost sh]# bb=22[详细]
-
Shell预定义变量用法详解
所属栏目:[Linux] 日期:2020-12-14 热度:121
预定义变量是在 Shell 一开始时就定义的变量,这一点和默认环境变量有些类似。不同的是,预定义变量不能重新定义,用户只能根据 Shell 的定义来使用这些变量。 严格来说,位置参数变量也是预定义变量的一种,知识位置参数变量的作用比较统一,所以我们把位置[详细]
-
Shell常用运算符
所属栏目:[Linux] 日期:2020-12-14 热度:180
Shell 中常用的运算符如下表所示: 表 1 Shell 中常用的运算符 优先级 运算符 说?明 13 -,+ 单目负、单目正 12 !,~ 逻辑非、按位取反或补码 11 *,/,% 乘、除、取模 10 +,- 加、减 9 , 按位左移、按位右移 8 =,=,, 小于或等于、大于或等于、小于、大于 7 ==?,![详细]
-
Shell cut命令:查找符合条件的行
所属栏目:[Linux] 日期:2020-12-14 热度:114
grep 命令是在文件中提取符合条件的行,也就是分析一行的信息,如果行中包含需要的信息,就把该行提取出来。而如果要进行列提取,就要利用 cut 命令了。 不过要小心,虽然 cut 命令用于提取符合条件的列,但是也要一行一行地进行数据提[详细]
-
Shell(Bash)变量及定义规范
所属栏目:[Linux] 日期:2020-12-14 热度:197
什么是变量呢?从字面上来看就是可以变的量。举个例子,我们小时候都做过数学的应用题,经常定义 x 的值是某个数,如果换了一道题,还是定义 x 的值,但是 x 的值就不和第一道题相同了,这个 x 就是变量。 变量是计算机内存的单元,其中存放的值可以改变。当[详细]
-
正则表达式是什么
所属栏目:[Linux] 日期:2020-12-14 热度:64
正则表达式 ,也称作 正规表示法 ,是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割,匹配、査找及替换操作。 这种枯燥的概念难理解,其实,正则表达式是用来匹配文件中的字符串的方法。它会先把整个文本分成一行一行的字符串,然[详细]
-
Shell(Bash)用户自定义变量使用方法详解
所属栏目:[Linux] 日期:2020-12-14 热度:151
用户 自定义变量 是最常用的变量类型,其特点是变量名和变量值都是由用户自由定义的。 那么,该如何定义变量呢?很简单,只需执行"变量名=变量值"命令即可,不过要遵守变量定义规则。例如: [root@localhost ~]# name="C biancheng" 变量的定义就是这么简单,[详细]
-
Shell source命令:使环境变量配置文件强制生效
所属栏目:[Linux] 日期:2020-12-14 热度:171
source 命令会强制执行脚本中的全部命令,而忽略脚本文件的权限。该命令主要用于让重新配置的环境变量配置文件强制生效。 source 命令格式如下: [root@localhost ~]# source 配置文件 或 [root@localhost ~]#.配置文件 举个例子: [root@localhost ~]# sourc[详细]
-
Linux LANG变量设置:定义系统的主语系环境
所属栏目:[Linux] 日期:2020-12-14 热度:193
LANG 变量定义了 Linux 系统的主语系环境,这个变量的默认值如下: [root@localhost src]# echo $LANG zh_CN.UTF-8 这是因为我们在安装 Linux 时选择的是中文安装,所以默认的主语系变量是"zh_CN.UTF-8"。那么,Linux 系统中到底支持多少种语系呢?我们可以使[详细]
-
Shell变量测试与内容置换
所属栏目:[Linux] 日期:2020-12-14 热度:131
在脚本中,有时需要判断变量是否存在或是否被赋予了值,如果变量已经存在并且被赋予了值,则不改变变量;如果变量不存在或没有被赋值,则赋予其新值。这时我们就可以使用变量测试与内容置换。 我们在脚本中可以使用条件判断语句 if 来替代这种测试方法,不过[详细]