Linux系统概述及Linux内置命令集

2023-11-30 08:32

本文主要是介绍Linux系统概述及Linux内置命令集,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Hadoop大数据项目实践——The 3th day

  • Linux系统概述
  • Linux文件系统
  • Linux内置命令集

Linux系统概述

  1. linux是一套免费使用和自由传播的类Unix操作系统,支持多用户、多任务、多线程、多CPU的开源操作系统。
  2. Linux系统由四部分组成,各组件在Linux系统中既相对独立又相互联系,每个组件实现相对独立的功能,如果将各组件分开,就不是一个完整的Linux系统。各组件协调工作才能构成一个完整的Linux系统:
    1. Linux内核
    2. GNU工具组件
    3. 图形化桌面
    4. 应用软件
  3. Linux内核
    管理和分配计算机资源(CPU,内存和其他硬件设备)的核心软件,也包括命令行解释器,图形桌面,文件操作工具和文本编辑器等等其他工具软件。
    1. 进程调度;
    2. 内存管理:采用了虚拟内存管理机制,使用虚拟内存有两方面的好处:
      一是,进程和进程之间、进程和内核之间要彼此隔离,不能共享内存,一个进程不能读取或修改其他进程或内核在内存中的内容。
      二是,只将进程的一部分放在内存中,这样可以减少进程对内存的需求量,而且还可以在内存中加载更多的进程,使执行高效的CPU在任一时刻都有一个进程在执行,可以更充分的使用CPU资源。
    3. 提供了文件系统:内核在磁盘之上提供了文件系统,允许用户创建、更新和删除文件的操作。
    4. 创建和终止进程:内核可以将进程加载到内存,为其分配允许所需要的资源(CPU、内存和文件的访问等等)。把运行中的程序称作进程,一旦程序执行结束,内核还要释放进程所占用的资源为其他进程使用。
    5. 对设备的访问:计算机的外部设备,如键盘、鼠标和光驱等等,内核可以实现计算机与外部设备的通信,包括输入和输出。
    6. 提供应用程序编程接口:用户可以通过程序请求内核执行各种任务。
  4. GNU工具为Linux提供一些工具软件包,用来处理文件、操作文本、管理进程。
    Shell:是用户与Linux系统的交互工具,为用户提供了启动程序,管理文件系统上的文件和各种运行在系统上的进程。也可以通过shell脚本,一次执行一组命令,完成一个特定的任务。
  5. 早期的Linux系统只有命令行界面,允许管理员运行程序、管理程序的执行和管理系统中的文件。

Linux文件系统

  1. / 虚拟目录的根目录,所有的目录都在根目录下
  2. /bin 存放可执行命令的二进制文件,如:cd命令、cat命令,这些命令都是二进制命令。在/usr/bin目录目录下也存放着一些二进制命令。
  3. /boot 内核和加载内核所需的文件。系统启动目录,存放系统启动文件,存放的是启动Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。
  4. /dev dev是Device(设备)的缩写。该目录下存放的是Linux 的外部设备,在Linux 中访问设备的方式和访问文件的方式是相同的。
  5. /etc 系统启动文件和配置文件的目录。这个目录用来存放所有的系统管理所需要的配置文件和子目录,如/etc/profile、/etc/passwd等文件。
  6. /home 在Linux 中,每个用户都有一个自己的工作目录,用来存放一些自己的文件,并且在这个目录中用户具有所有的权限。一般该目录名是以用户的账号命名的。例如用户yarn 的主目录就是/home/yarn,因为所有用户都有自己的主目录。
  7. /lib 库文件目录,用于存放系统和应用程序的库文件,这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows 里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
  8. /media 可移动设备的挂载点。Linux 系统会自动识别一些设备,例如U 盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
  9. /mnt 挂载目录,用于存放设备挂载点,用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
  10. /opt 用于安装三方软件,这是给主机额外安装软件所摆放的目录。比如您安装一个ORACLE 数据库则就可以放到这个目录下。默认是空的。
  11. /root root管理员的主工作目录。
  12. /sbin 引导、修复和恢复系统的命令目录。存放可执行命令的二进制文件,管理员级别的命令工具。
  13. /tmp 临时目录,用于存放临时创建的文件。通常在启动时,清理/tmp 目录下的空间,所以你不能在/tmp 存储需要长期保留的内容。
  14. /usr 用户安装软件的目录,用户相关的程序和只读数据驻留的位置,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows 下的program files 目录。在 /usr 中存在整个目录层次结构。例如,/usr/bin 目录包含二进制文件和应用程序,而 /usr/share/doc 包含与这些应用程序相关的文档。
  15. /var 用于存放经常变化的文件,如日志文件。
  16. /lost+found 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件碎片,用于系统恢复。
  17. /proc 所有正在运行进程的映像目录。这个目录是一个虚拟的目录,它是系统内存的映射,这个目录的内容不在硬盘上而是在内存里。
  18. /selinux 这个目录是Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux 相关的文件的。
  19. /sys Linux文件系统信息。
  20. /usr/bin 系统用户使用的应用程序。
  21. /usr/sbin 超级用户使用的比较高级的管理程序和系统守护程序。
  22. /usr/src 内核源代码默认的放置目录。

Linux内置命令集

  1. cd 文件目录切换
    cd 回到当前家目录;cd - 回到上一次所在目录;cd … 回到上一级目录

  2. ls 显示文件和目录信息
    参数:
    -a 显示所有内容
    -l 列表形式显示
    -R 递归显示子目录下的文件
    -i 显示文件索引值
    ll是ls -l的简写
    文件或目录均有自己的所属组以及权限
    drwxr-xr-x. 从前往后分别用数字0123456789表示
    0位置 -为文件 d为目录
    123位置 所属用户的权限 -为无权限 r读 x执行 w写
    456位置 所属组的权限
    789位置 其他用户的权限

  3. 过滤显示:
    ls -l hell?
    ls -l hell*
    ?号占位符代表一个字符,*号占位符代表零个到多个字符

  4. touch newfile
    创建一个空文件,名为newfile

  5. cp 复制文件
    cp 源文件 目标文件
    cp test1 test2 将当前目录下的test1复制到当前目录,并重命名为test2
    参数–r:递归复制(将一个目录包括该目录下的文件全部拷贝到其他目录时使用)
    cp -r dir1 dir2 将当前目录下的dir1目录递归复制一份在本目录下,并重命名为dir2

  6. mv可以做文件重命名命令
    mv source dest 将原名为source的文件或目录重命名为dest

  7. rm 删除文件命令
    rm (-参数) 文件或目录名
    参数:
    -r 递归删除
    -f 忽略提时信息
    -i 提示确认删除信息
    慎重使用rm -rf /*的命令,这样会删除根目录下的所有文件,尤其是使用root权限时,使用该命令后,差不多就该跑路了
    rm -rf dir3 递归删除目录dir3,且忽略提示信息

  8. 目录管理
    mkdir命令用于创建目录,rmdir命令用于删除空的目录,如果目录非空,就只能使用rm命令才可以删除。
    同时创建多级目录,需要参数-p
    mkdir dir4
    rmdir dir4
    mkdir -p ~/test2/dir5/dir6/dir7 创建多级目录
    rm -rf ~/test2 递归删除上一步创建的多级目录,由于test2目录下还有目录,即test2目录不空,故不可使用rmdir命令删除

  9. 查看文件内容
    cat命令可以显示文本文件内容到控制台;
    more命令会显示文件的内容到控制台,但是与cat命令的区别是按页显示,当显示一屏
    后会停下来,等用户下一步操作;
    less命令是more命令的升级版本,使用方式上和more命令相似,一次只显示一屏文件内容到控制台并等待用户的下一步操作,less命令支持more命令的所有参数并且可以通过上下键翻页。另外,less命令不同于cat命令和more命令的重要特点是不读取整个文件到内存,如果文件很大,less命令的性能要优于cat命令和more命令
    more与less命令下的按键:

    按键说明
    z显示文本的下一屏
    空格键显示文本的下一屏
    b显示文本的上一屏
    回车键显示下一行
    q退出
    v启动文本编辑器
    =显示当前文本的行号

    tail命令只显示文件的最后部分内容,默认情况下是最后十行,可以通过-n参数指定显示的行数;
    tail -n 20 logs 读取logs文件的后20行内容
    head命令和tail命令相似,只是显示的文件的开头内容,默认情况下显示十行,可以通过-n参数指定显示的行数。

这篇关于Linux系统概述及Linux内置命令集的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/436349

相关文章

Mac系统下卸载JAVA和JDK的步骤

《Mac系统下卸载JAVA和JDK的步骤》JDK是Java语言的软件开发工具包,它提供了开发和运行Java应用程序所需的工具、库和资源,:本文主要介绍Mac系统下卸载JAVA和JDK的相关资料,需... 目录1. 卸载系统自带的 Java 版本检查当前 Java 版本通过命令卸载系统 Java2. 卸载自定

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

详解Linux中常见环境变量的特点与设置

《详解Linux中常见环境变量的特点与设置》环境变量是操作系统和用户设置的一些动态键值对,为运行的程序提供配置信息,理解环境变量对于系统管理、软件开发都很重要,下面小编就为大家详细介绍一下吧... 目录前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变

Linux系统中的firewall-offline-cmd详解(收藏版)

《Linux系统中的firewall-offline-cmd详解(收藏版)》firewall-offline-cmd是firewalld的一个命令行工具,专门设计用于在没有运行firewalld服务的... 目录主要用途基本语法选项1. 状态管理2. 区域管理3. 服务管理4. 端口管理5. ICMP 阻断

Linux实现线程同步的多种方式汇总

《Linux实现线程同步的多种方式汇总》本文详细介绍了Linux下线程同步的多种方法,包括互斥锁、自旋锁、信号量以及它们的使用示例,通过这些同步机制,可以解决线程安全问题,防止资源竞争导致的错误,示例... 目录什么是线程同步?一、互斥锁(单人洗手间规则)适用场景:特点:二、条件变量(咖啡厅取餐系统)工作流

Linux中修改Apache HTTP Server(httpd)默认端口的完整指南

《Linux中修改ApacheHTTPServer(httpd)默认端口的完整指南》ApacheHTTPServer(简称httpd)是Linux系统中最常用的Web服务器之一,本文将详细介绍如何... 目录一、修改 httpd 默认端口的步骤1. 查找 httpd 配置文件路径2. 编辑配置文件3. 保存

Linux使用scp进行远程目录文件复制的详细步骤和示例

《Linux使用scp进行远程目录文件复制的详细步骤和示例》在Linux系统中,scp(安全复制协议)是一个使用SSH(安全外壳协议)进行文件和目录安全传输的命令,它允许在远程主机之间复制文件和目录,... 目录1. 什么是scp?2. 语法3. 示例示例 1: 复制本地目录到远程主机示例 2: 复制远程主