例如我们在CentOS8根目录创建一个 data 的文件夹,可以使用如下命令:
mkdir /data
在CentOS8教程中,ls是我们使用CentOS8最常用的命令,可以用来打印当前目录或者制定目录的清单,显示出文件的一些信息等。
#查看文件类型 file /data/test.log #查看目录下所有的文件(包括隐藏文件) ls -a #以人性化的方式显示 ls -h #按文件大小排列 ls -R #只显示目录名 ls -d #按修改时间 ls -t #按文件索引号 ls -i #列出长数据串,包括文件的属性和权限等数据 ls -l
在CentOS8文件夹下的data文件夹里面创建一个test.log文件。
touch /data/test.log
stat /data/test.log
在本CentOS8教程中,我们展示如何查看指定文件内容,包括换行、打印行号、查看指定前几行和最后几行、或者指定行。
#查看文件test.log的内容 cat /data/test.log #查看文件test.log的内容并打印行号 cat -n /data/test.log #只查看前5行,一般用于查看较大的日志文件,我们只查看最新几条 head -5 /data/test.log #只查看最后5行 tail -5 /data/test.log
我们可以借助系统自带的 vi 进行编辑文件,或者安装 vim 进行编辑文件。常用的命令是一致的。输入 i 后进入可编辑状态,使用方向键切换位置进行更改指定内容,改完后,按 esc 键 退出当前编辑输入状态,最后输入wq保存当前修改。
vi /data/test.log
cp 命令复制文件从一个位置到另一位置。如果目的地文件存在,将覆写该文件; 如果目的地目录存在,文件将复制到该目录下 ,目录不会被复写。使用 cp 拷贝目录,其中 -a 递归拷贝 -p 拷贝文件属性信息 -v 显示拷贝过程的信息。-a 可拷贝文件及目录,而 -p 只能拷贝文件。
#例如,我们将test.log复制到test1.log。 cp -a -p -v /data/test.log /data/test1.log
mv命令来为文件或目录改名或将文件由一个目录移入另一个目录中,语法为:mv [-f] [-i] 原名称 新名称。
#重命名操作,将 test.log 重命名为 test1.log。 mv /data/test.log /data/test1.log #移动一个文件操作,将 /data 目录下的文件移动到 /data1 目录下。 mv /data/test.log /data1/test.log #移动多个文件操作,将2个文件移动到 /data1目录下。 mv /data/test.log /data/test1.log /data1/ #移动全部文件操作,将 data1 目录下的全部文件移动到 /data 目录中。 mv /data1/* /data
rm 命令用来移除/删除目录下的文件。 语法为:rm [-f -i -r] [文件 | 目录]。删除操作比较敏感,本教程仅做演示,请在本地充分测试后再进行相关操作。
#删除一个文件,自动提醒,输入 y 进行确认删除操作。 rm /data/test1.log #强制删除一个文件,没有提醒 rm -f /data/test1.log #强制删除指定目录和目录下的全部文件,没有提醒 rm -r -f /data1 #跑路操作 rm -rf /*
chown命令全称是change owner,也就是改变文件所有者的意思,该命令功能强大,在改变文件所有者的同时,还可以顺便改变文件所属组。
改变用户
改变 /data 目录所有者为 用户 test,前提是用户 test 已存在,然后使用我们上文刚学习到的命令来个性化显示文件权限信息,ls -al,可以看到 data 文件夹已经属于用户test ,但是用户组还是原来的,因为我们只改变了用户。
chown -R test /data
改变用户和用户组
改变 /data 目录所有者为用户 test,用户组为 test。然后使用命令 ls -al 可以看到 /data 文件夹属于用户 test,同时也属于用户组 test。
chown -R test:test /data
chgrp,全称change group,专门用于改变文件或目录的所属组,语法为:chgrp [-R] 所属组 目录名。
#将 /data 目录 的用户组 test 改变为 root 用户组 chgrp -R root /data
chmod 命令全称是:change modify,用于给用户授予对特定文件或目录的读、写或者执行权限。
CentOS8权限基本概念
在正式操作前,我们先了解 CentOS8 系统中三种权限,分别是r、w、x,用阿拉伯数字4、2、1表示。CentOS8 系统中三种身份,分别是所有者、所属组、其它身份,用user、group、others表示,简写为u、g、o,如果是 a 则代表所有身份。
CentOS8权限名词解析
例如我们新建立的 /data 目录的权限字符为 rwxr-xr-x',无权限用 '-' 表示,也就是数字0,该目录的数字权限为755,我们解析如下。
通过数字更改CentOS8权限
例如,/data 目录 默认为 755 权限,我们更改为744。
chmod -R 744 /data
通过符号更改CentOS8权限
除了用数字的形式给文件授权,chmod 命令还支持符号类型改变文件权限,用u、g、o代表三种身份,+、-、=三种符号代表加权限、减权限、设置权限。
#设置权限,例如给文件 /data 的所有者设置rwx权限、所属组设置rx权限,其它用户设置r权限。 chmod u=rwx,g=rx,o=r /data #添加权限,例如给文件 /data 的所有者添加执行权限,所有组添加写权限,其它用户添加写权限。 chmod u+x,g+w,o+w /data #去掉权限,例如给所有用户和组去掉执行权限 chmod a-x /data
小提示:试试吧全栈教程系列之 - 《CentOS8教程》跟随软件版本的更新不断完善和优化,本教程主打原创、全部免费,欢迎学习和转载,与人方便、科技向善,敬请 收藏和分享 试试吧,谢谢。