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

相关文章

Windows系统宽带限制如何解除?

《Windows系统宽带限制如何解除?》有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文就跟大家一起来看看Windows系统解除网络限制的操作方法吧... 有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文

windows和Linux使用命令行计算文件的MD5值

《windows和Linux使用命令行计算文件的MD5值》在Windows和Linux系统中,您可以使用命令行(终端或命令提示符)来计算文件的MD5值,文章介绍了在Windows和Linux/macO... 目录在Windows上:在linux或MACOS上:总结在Windows上:可以使用certuti

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

电脑找不到mfc90u.dll文件怎么办? 系统报错mfc90u.dll丢失修复的5种方案

《电脑找不到mfc90u.dll文件怎么办?系统报错mfc90u.dll丢失修复的5种方案》在我们日常使用电脑的过程中,可能会遇到一些软件或系统错误,其中之一就是mfc90u.dll丢失,那么,mf... 在大部分情况下出现我们运行或安装软件,游戏出现提示丢失某些DLL文件或OCX文件的原因可能是原始安装包

电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案

《电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案》最近有不少兄弟反映,电脑突然弹出“mfc100u.dll已加载,但找不到入口点”的错误提示,导致一些程序无法正... 在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是“找不到指定的模块”或“缺少某个DL

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

Linux命令之firewalld的用法

《Linux命令之firewalld的用法》:本文主要介绍Linux命令之firewalld的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux命令之firewalld1、程序包2、启动firewalld3、配置文件4、firewalld规则定义的九大

Linux之计划任务和调度命令at/cron详解

《Linux之计划任务和调度命令at/cron详解》:本文主要介绍Linux之计划任务和调度命令at/cron的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux计划任务和调度命令at/cron一、计划任务二、命令{at}介绍三、命令语法及功能 :at

Linux下如何使用C++获取硬件信息

《Linux下如何使用C++获取硬件信息》这篇文章主要为大家详细介绍了如何使用C++实现获取CPU,主板,磁盘,BIOS信息等硬件信息,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录方法获取CPU信息:读取"/proc/cpuinfo"文件获取磁盘信息:读取"/proc/diskstats"文