Centos Linux(Community Enterprise Operating System,中文意思是:社区企业操作系统)是社区成员基于GNU协议对RHEL LINUX(Red Hat Enterprise Linux)开放源代码进行的二次编译所获得的二进制系统,由于红帽linux(RHEL LINUX)的商标是有版权的,所以centos linux使用了全新的图标。
今天自然学习了centos linux下目录与文件的基本操作,centos linux可以使用桌面环境,但是在实际生产环境中绝大部分是使用命令行进行操作,这就致使目录与文件的管理成为了非常重要的环节。下面我们一起学习一下目录与文件相关的基本操作命令。
我们通过终端工具进入命令行模式,我们可以使用putty、xshell、SecureCRT等终端工具远程接入我们的服务器,这里自然使用的是secureCRT工具,这是一个强大的终端仿真工具。
- Last login: Wed Jan 23 13:32:57 2019 from 192.168.181.1
- [root@localhost ~]#
登录centos linux服务器后我们要做的第一步是了解当前所处的目录,我们输入pwd然后回车
- [root@localhost ~]# pwd
- /root
- [root@localhost ~]#
通过pwd命令我们知道现在所操作的目录是/根目录下的/root目录,root目录是超级管理root的家目录,一般我们通过root账户登录都会默认进入/root目录
如果我们创建一个a.c的文件,则使用touch命令,输入touch a.c即可
- [root@localhost ~]# touch a.c
- [root@localhost ~]# ls
- a.c initial-setup-ks.cfg 模板 图片 下载 桌面
- anaconda-ks.cfg 公共 视频 文档 音乐
- [root@localhost ~]#
我们运行touch a.c不会显示任何提示,这时我们使用ls命令,可以查看当前目录下的目录与文件,这是我们可以看见a.c文件已经成功创建了。
如果我们想查看指定目录下的目录及文件,我们只需要使用ls命令输入ls /tmp然后回车即可(这里我们以根目录下的/tmp目录作为演示)
- [root@localhost ~]# ls /tmp
- anaconda.log
- hsperfdata_centos
- hsperfdata_root
- ifcfg.log
- ks-script-2rvvz9
- packaging.log
- program.log
- sensitive-info.log
- storage.log
- systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-chronyd.service-wBR7AD
- systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-cups.service-q0pgCa
- tracker-extract-files.0
- tracker-extract-files.1000
- vmware-root_6330-692817680
- yum.log
- yum_save_tx.2019-01-23.13-25.wIIrOJ.yumtx
- [root@localhost ~]#
如果我们想删除刚才创建的a.c文件,则使用rm命令输入rm a.c回车进行删除,操作的过程中会提示是否删除,输入y回车即可
- [root@localhost ~]# ls
- a.c anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
- [root@localhost ~]# rm a.c
- rm:是否删除普通空文件 “a.c”?y
- [root@localhost ~]# ls
- anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
- [root@localhost ~]#
如果批量删除文件每次都会产生一个是否删除的提示会显得非常繁琐,这是我们可以给rm命令后面加上-rf的参数执行强制删除
- [root@localhost ~]# ls
- anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
- [root@localhost ~]# touch a.c
- [root@localhost ~]# ls
- a.c anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
- [root@localhost ~]# rm a.c -rf
- [root@localhost ~]# ls
- anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
- [root@localhost ~]#
如果我们想创建一个目录,那么需要使用mkdir命令(mk是make产生的意思,dir是directory目录的意思),例如在当前目录下新建一个名为abc的目录,在命令行输入mkdir abc回车
- [root@localhost ~]# ls
- anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
- [root@localhost ~]# mkdir abc
- [root@localhost ~]# ls
- abc anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
- [root@localhost ~]#
这样我们就产生了一个叫abc的目录,如果我们想删除这个abc目录,我们可以使用rm命令删除,我们也可以加上-rf的参数进行强制删除
- [root@localhost ~]# ls
- abc anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
- [root@localhost ~]# rm -rf abc
- [root@localhost ~]# ls
- anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
- [root@localhost ~]#
下面我们还要了解一下cp命令copy拷贝、复制的意思,如果我们想把anaconda-ks.cfg 拷贝到/tmp目录当中,我们可以使用cp命令,命令行输入cp anaconda-ks.cfg /tmp回车
- [root@localhost ~]# cp anaconda-ks.cfg /tmp
- [root@localhost ~]# ls /tmp
- anaconda-ks.cfg packaging.log tracker-extract-files.0
- anaconda.log program.log tracker-extract-files.1000
- hsperfdata_centos sensitive-info.log vmware-root_6330-692817680
- hsperfdata_root storage.log yum.log
- ifcfg.log systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-chronyd.service-wBR7AD yum_save_tx.2019-01-23.13-25.wIIrOJ.yumtx
- ks-script-2rvvz9 systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-cups.service-q0pgCa
- [root@localhost ~]#
我们使用cd命令切换到/tmp目录
- [root@localhost ~]# cd /tmp
- [root@localhost tmp]# ls
- anaconda-ks.cfg packaging.log tracker-extract-files.0
- anaconda.log program.log tracker-extract-files.1000
- hsperfdata_centos sensitive-info.log vmware-root_6330-692817680
- hsperfdata_root storage.log yum.log
- ifcfg.log systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-chronyd.service-wBR7AD yum_save_tx.2019-01-23.13-25.wIIrOJ.yumtx
- ks-script-2rvvz9 systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-cups.service-q0pgCa
- [root@localhost tmp]#
如果我们想把anaconda-ks.cfg重命名为b.c文件,需要使用到mv(move移动、重命名的意思)命令,命令行输入mv anaconda-ks.cfg b.c回车即可
- [root@localhost tmp]# ls
- anaconda-ks.cfg packaging.log tracker-extract-files.0
- anaconda.log program.log tracker-extract-files.1000
- hsperfdata_centos sensitive-info.log vmware-root_6330-692817680
- hsperfdata_root storage.log yum.log
- ifcfg.log systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-chronyd.service-wBR7AD yum_save_tx.2019-01-23.13-25.wIIrOJ.yumtx
- ks-script-2rvvz9 systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-cups.service-q0pgCa
- [root@localhost tmp]# mv anaconda-ks.cfg b.c
- [root@localhost tmp]# ls
- anaconda.log packaging.log tracker-extract-files.0
- b.c program.log tracker-extract-files.1000
- hsperfdata_centos sensitive-info.log vmware-root_6330-692817680
- hsperfdata_root storage.log yum.log
- ifcfg.log systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-chronyd.service-wBR7AD yum_save_tx.2019-01-23.13-25.wIIrOJ.yumtx
- ks-script-2rvvz9 systemd-private-bc89ed7476dc4d18b7e6af4f71191b03-cups.service-q0pgCa
- [root@localhost tmp]#
如果我们想查看某个文件,例如在运维过程中我们需要查看日志文件ifcfg.log,这时需要使用到cat命令,输入cat ifcfg.log回车
- [root@localhost tmp]# cat ifcfg.log
- 13:22:09,484 DEBUG ifcfg: IfcfFile.read /etc/sysconfig/network-scripts/ifcfg-ens33
- 13:22:09,485 DEBUG ifcfg: IfcfFile.read /etc/sysconfig/network-scripts/ifcfg-ens33
- 13:22:09,486 DEBUG ifcfg: IfcfFile.read /etc/sysconfig/network-scripts/ifcfg-ens33
- 13:22:09,486 DEBUG ifcfg: IfcfFile.read /etc/sysconfig/network-scripts/ifcfg-ens33
- 13:22:09,487 DEBUG ifcfg: IfcfFile.read /etc/sysconfig/network-scripts/ifcfg-ens33
- [root@localhost tmp]#
另外我们可以使用vi/vim编辑器来查看,这个下次用一张图来详细介绍vi/vim编辑器,VI/VIM编辑器是运维调试过程中百分百需要使用到的工具,非常重要,所以用一篇文章来说明
我们用cd命令回到根目录,命令行输入cd /回车即可
- [root@localhost ~]# cd /
- [root@localhost /]# ls
- bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
- [root@localhost /]#
我们可以看见里头有很多目录:
bin和sbin里面存放了可以直接运行的文件;
boot里面存放了一些跟系统引导有关的文件;
dev里面存放的是一些设备名,linux系统中所有的设备都是以设备名的形式来操作;
etc目录存放了一些跟配置相关的文件;
home就是一些用户的家目录和文件在里面;
lib和lib64主要是存放一些库文件;
root是超级管理员的家目录;
run是一些跟程序运行相关的文件会存放在这个目录;
tmp存放了一些临时的数据;
usr是程序的安装目录,一般程序默认安装在这里面,就行windows下程序默认会安装在C盘;
var主要存放了一些可变长度的文件,例如日志文件等