第三周Linux课程随笔

发布时间 2023-11-26 22:51:53作者: hthht
  第二周我们第一次上Linux,老师在课程上给我们简单介绍了Linux,Linux的优点为多线程、多任务、多用户、多cpu。然后向我们详细地讲解了虚拟机如何安装以及配置,还教了我们如何安装配置CentOS7系统。在课后要我们将Xshell远程终端、SFTP远程文件管理安装好。并向我们讲解了快照、克隆,详细说明了在我们日后的生活中最好在写完代码、编程之后将系统进行快照,这样可以防止一些意外情况发生时系统里的文件丢失等,如果发生那样的情况也可以使用快照功能恢复。最后要下课时,老师为我们稍微讲解了一下第二章文件管理的内容。
  第三周,我们开始详细学习第二章,在Linux中,一切皆文件,在这一章节里我们将学习文件管理,其中包括创建文件、复制文件、删除文件等。

2.1 文件目录与路径

2.1.1 文件目录

Linux和Windows系统不同的地方是Windows以多根的方式组织文件,而Linux系统是以单根的形式组织文件的,在Linux系统中所有的文件都在根目录(/)下。常见的目录有:
  • /bin:保存系统命令,如ls、cd、pwd等常用命令
  • /dev:存放设备文件,特殊文件保存目录(不可以随意修改)
  • /home:用户目录,存放普通用户相关文件的用户,是我们常用的目录
  • /lost+found:存放临时文件。此文件夹大多数情况下都是空的,当突然停电或非正常关机后,有些文件就临时存放在这里。
  • /mnt:缺省挂载点,挂载U盘、移动硬盘目录(常用)
  • /sbin:用来存放管理员才能使用的命令,即具有一定权限才可以使用的命令
  • /proc:进程,该目录不能直接操作,其保存的是内存的过载点
  • /srv: 系统启动服务时可以访问的数据库目录
  • /tmp:临时目录
  • /var:系统相关文档内容目录,存放经常被修改的文件,包括各种日志、数据文件。
  • /boot:存放引导的相关文件,保存系统的启动数据(不可随意操作)
  • /etc:用来存放配置相关文件
  • /lib:存放系统动态链接共享库,几乎所有的应用程序都会用到该目录下的共享库。
  • /media:存放挂载和自动挂载设备的标准位置。如远程文件系统和可移动介质。
  • /opt:存放第三方软件。第三方软件在安装时默认会找到这个目录,所以如果你没有安装此类软件时,它是空的,但如果你一旦把它删除,以后再安装此类软件可能会碰到麻烦。
  • /root:存放root用户(即管理员用户)相关文件的目录
  • /sys:该目录不能直接操作,存放类似于/proc的文件系统,在Linux2.6内核中最新出现,包含的文件用于获得硬件状态并反映内核看到的系统设备树。它使用了/proc中的很多帮助。
  • /selinux:selinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。
  • /usr:系统软件资源目录,存放默认安装文件的目录,存放用户的应用程序和文件
  • /usr/bin:众多的应用程序
  • /usr/sbin:超级用户的一些管理程序
  • /usr/include:Linux下开发和编译应用程序所需要的头文件
  • /usr/lib:常用的动态链接库和软件包的配置文件
  • /usr/src:源代码,Linux内核的源代码就放在这里
  • /usr/local/bin:本地增加的命令
  • /usr/local/lib:本地增加的库

2.1.2 文件路径

文件路径,所历经的文件夹线路,其分为两种:一为绝对路径,二为相对路径。绝对路径,是指从根目录(/)开始的路径;而相对路径,是指相对于当前工作目录的路径。在查看相对路径时,“..”表示当前目录的上层目录,“.”表示当前目录。在Linux系统中,用户可以通过tree命令显示路径结构,可以使用yum -y install tree命令安装tree工具。

2.2 目录与文件操作

2.2.1 目录与文件操作

目录操作包括创建目录、查看目录、切换目录、删除目录。

1.创建目录:

用户可以通过mkdir命令创建一个空白目录,

 此外,mkdir命令还可以通过添加“-p”参数来创建一个多层目录,

 2. 查看目录:

可以通过pwd命令显示当前所在目录,添加“-p”参数可以显示实际工作目录,而非链接文件本身的目录名,

 可以通过“ls-a”命令查看隐藏的目录与文件

 可以通过“ls -l”命令查看目录与文件的属性,此命令可以简写为“ll”。

3.切换目录

可以通过“cd”命令切换目录,如果“cd”命令不加任何路径表示直接返回到root目录,此外“cd-”表示返回上一次目录

 4.删除目录

可以通过rmdir命令来删除空目录,如需连同上一层空目录一起删除,添加“-p”参数。

2.2.2  文件操作

文件操作包括创建文件、查看文件、复制文件、移动文件、删除文件。

1.创建文件 

可以通过touch命令创建一个空白文件,也可以设置文件、属性,添加“-d”参数来修改文件时间,且可以使用echo命令写入新内容到文件中去。

 2.查看文件

(1)cat命令:可以使用cat命令查看内容较少的文件,添加“-n”参数可以显示行号,添加“-A”参数显示不可显示控制字符(换行符/制表符)。

 (2)more命令

more命令以逐页的方式显示文件内容,用户可以通过空格键向下翻一页,b键向上翻一页,

 (3)less命令

less命令也可以对文件或其他输出进行分页显示,可以用pageup、pagedown与键盘方向键来上下翻看文件,查找文件内容比more更容易,最后按q键退出,

 (4)head命令

可以使用head命令查看文件前几行的内容,添加“-n”参数显示文件的前n行,

 (5)tail命令

可以使用tail命令查看文件后几行的内容,且可以添加“-n”参数显示文件的后几行,添加“-f”参数可以查看动态文件

 (6)grep命令

可以使用grep命令对文件内容进行过滤、搜索关键词,从而快速找到所需内容,

 上图命令表示显示含有root的行,

 上图命令表示显示以root开头的行,

 上图命令表示显示以bash结尾的行。

3.复制文件

可以使用cp命令复制文件,除了可以复制单个文件之外,还可以复制整个目录,创建链接文件,对比新旧文件而予以更新,文件目录较长时,可以用花括号括起不同的部分。

 4.移动文件

mv命令可以移动或者重命名文件或目录,如将一个文件移动到另外一个已知的文件中,则目标文件里的内容将被覆盖。mv与cp命令所产生的结果不一样,cp命令是复制,对文件进行复制,文件个数增加;mv命令,类似文件搬家,文件个数并不增加

 5.删除文件

rm命令可以删除文件,如果用来删除目录,就需要添加"-f"参数,“-f”参数可以跳过验证直接执行删除操作。使用“rm -rf”时需要格外小心,root用户不会收到通知提示,一旦执行命令,目录和文件肯定会被删除,脚本删除要使用绝对路径,可降低误删的概率(注:rm:在“/"进行递归操作十分危险;使用--no-preserve-root选项跳过安全模式。