1 用户和用户组
1.1 概念
1、root用户
系统唯一,是真实的。该用户既可以登录系统,可 以操作系统任何文件和命令,拥有最高权限。
2、虚拟用户
这类用户也被称为伪用户或假用户,与真实用户区分开来,这类用户不 具有登录系统的能力,但却是系统运行不可缺少的用户,比如 bin、daemon、adm、 ftp、mail等;这类用户是系统自身拥有的,而非后来添加的,当然,我们也可以添 加虚拟用户。
3、普通真实用户
这类用户能登录系统,但只能操作其根目录的内容,权限受到限制, 这类用户都是系统管理员自行添加的。
1.2 命令
用户组 (groupadd+groupdel+groupmod)
// 创建用户组
[root@localhost ~]# groupadd -g 808 xjgroup
[root@localhost ~]# cat /etc/group | grep xjgroup
xjgroup:x:808:
// 修改用户组
[root@localhost ~]# cat /etc/group |grep xj
xjgroup:x:808:
[root@localhost ~]# groupmod -g 809 xjgroup
[root@localhost ~]# cat /etc/group |grep xj
xjgroup:x:809:
[root@localhost ~]#
// 删除用户组
[root@localhost ~]# groupdel xjgroup
[root@localhost ~]# cat /etc/group |grep xjgroup
[root@localhost ~]#
用户 (useradd+adduser+userdel+usermod)
// 创建用户root。命令useradd等同于adduser
-- [-u] 指定用户ID
-- [-g] 指定用户所属组
-- [-d] 指定家目录
[root@localhost ~]# useradd -u 808 -g xjgroup -d /home/xj xj
[root@localhost ~]# adduser -u 809 -g xjgroup -d /home/xj1 xj1
[root@localhost ~]# cat /etc/passwd | grep xj
xj:x:808:808::/home/xj:/bin/bash
xj1:x:809:808::/home/xj1:/bin/bash
[root@localhost ~]#
// 设置用户密码后适用用户
[root@localhost ~]# passwd xj1
// 删除用户。root用户操作。
[root@localhost ~]# userdel xj xj1
// 修改用户。usermod
-- 修改用户有效期为3天
[root@localhost ~]# usermod -e 3 xj
-- 修改用户登录的初始目录
[root@localhost ~]# usermod -d /home/xj1 xj
-- 修改用户密码
[root@localhost ~]# usermod -p Xj123@22 xj
2 文件和文件夹
2.1 概念
1、文件名
由字母、数字、下画线和圆点组成的字符串 构成。长度要求:小于255个字符。
2、扩展名
文件名与扩展名之间用圆点分开。如:test.txt,txt为扩展名。
3、文件目录
是将所有文件的说明信息采用树形结构组织起来,即我们常说的目录。
整个文件系统有一个“根” (root), 然后在根上分“权” (directory), 任何一个分权上都可以再分权,权上也可以长出“叶子”。 “根”和“杈”在Linux 中被称 为“目录”或“文件夹”,而“叶子”则代表一个个的文件。
4、路径path
路径的主要构成是目录名称,中间 用“/”符号分开。对文件进行访问时使用。
任一文件在文件系统中的位置都是由相应的路径决定的。用户在对文件进 行访问时,要给出文件所在的路径,这又分相对路径和绝对路径。
相对路径
是从用户工作目 录开始的路径;绝对路径
是指从“根”开始的路径,也称为完全路径。文章来源:https://www.toymoban.com/news/detail-577509.html
2.2 文件操作命令
文件清单命令(ls)
选 项 | 意 义 |
---|---|
-a | 显示指定目录下所有的子目录与文件,包括隐藏文件 |
-A | 显示指定目录下所有的子目录与文件,包括隐藏文件,且不列出“. ”和“. ” |
-b | 对文件名中的不可显示字符用八进制逃逸字符显示 |
-c | 按文件的修改时间排序 |
-C | 分成多列显示各项 |
-d | 如果参数是目录,只显示其名称,而不显示其下的各文件。往往与1选项一起使用,以得到目录的详 细信息 |
-f | 不排序,该选项将使ts选项失效,使用aU选项有效 |
-i | 在输出的第一列显示文件的i节点号 |
-1 | 以长格式来显示文件的详细信息,每行列出的信息依次是:文件类型与权限、链接数、文件属主、文 件属组、文件大小、最近修改的时间、名字 |
-L | 若指定的名称为一个符号链接文件,则显示链接所指向的文件 |
-m | 输出按字符流格式,文件跨页显示,以逗号分开 |
-n | 输出格式与1选项相同,只不过在输出文件属主和属组是用相应的UID号和GID号来表示,而不是 实际的名称 |
-0 | 与1选项相同,只是不显示拥有者信息 |
-p | 在目录后面加一个“/” |
-q | 将文件名中的不可显示字符用“?”代替 |
-r | 按字母逆序或最早优先的顺序显示输出结果 |
-R | 递归式地显示指定目录的各个子目录中的文件 |
-s | 给出每个目录项所用的块数,包括间接块 |
-t | 显示时按修改时间(最近优先)而不是按名字排序;若文件修改时间相同,则按字典顺序,修改时间 取决于是否使用了c或u选顶。默认的时间标记是最后一次修改时间 |
-u | 显示时按文件上次存取的时间(最近优先)而不是按名字排序。即将-t的时间标记修改为最后一次访 问的时间 |
-x | 按行显示出各排序项的信息 |
文件复制命令(cp)
选 项 | 意 义 |
---|---|
-a | 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录 |
-d | 复制时保留链接 |
-f | 删除已经存在的目标文件而不提示 |
-i | 在覆盖目标文件之前将给出提示要求用户确认。回答y时,目标文件将被覆盖,是交互式复制 |
-p | 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中 |
-r | 若给出的源文件是目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须 为一个目录名 |
-1 | 不进行复制操作,只是链接文件 |
文件移动命令(mv)
选 项 | 意 义 |
---|---|
-i | 交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用 户回答y或n,这样可以避免误覆盖文件 |
-f | 禁止交互操作。在mv操作要覆盖某已有的目标文件时不给任何指示,指定此选项后,i选项将不 再起作用 |
-p | 移动时保持权限 |
文件删除目录(rm)
选 项 | 意 义 |
---|---|
-f | 忽略不存在的文件,从不给出提示 |
-r | 指示rm将参数中列出的全部目录和子目录均递归地删除 |
-i | 进行交互式删除 |
2.3 目录操作命令
创建目录命令(mkdir)
选 项 | 意 义 |
---|---|
-m | 对新建目录设置存取权限 |
-p | 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录 |
-v | 每次创建新目录都显示信息 |
[rootalocalhost shell]#mkdir -p testdir/test
删除目录命令(rmdir)
选 项 | 意 义 |
---|---|
-p | 递归删除。当子目录删除后,其父目录为空时,也将会一同被删除。如果整个路径被删除 或者由于某种原因保留部分路径,则系统会在标准输出上显示相应的信息 |
–ignore-fail-on-non-empty | 忽略非空目录的错误信息 |
rmdir 仅仅能删除父目录中只包含空子目录的情况,如果目录中存在文件,则使用 rmdir和 rmdir -p命令是无法删除该目录的,这时候使用:
rm -rf [directoryName]
文章来源地址https://www.toymoban.com/news/detail-577509.html
目录切换命令(cd)
选 项 | 意 义 |
---|---|
cd | 返回登录目录 |
cd~ | 同样是返回登录目录 |
ed/ | 返回系统根目录 |
cd /root | 返回到根用户或超级用户(在安装时创建的账号)的主目录,但必须是根用户才能访问该目录 |
ed /home | 返回到home目录,home目录通常为用户登录目录的上级目录 |
ed . | 向上移动一级目录 |
cd- | 返回上次访问的目录 |
到了这里,关于Linux Shell 脚本编程学习之【第2章 Linux文件系统和文本编辑器(第一部分)】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!