当前位置: 首页 > news >正文

Liunx入门(复习哈哈哈)

Linux

什么是Linux?

Linux是一个开源的免费的类Unix的操作系统,内核由Linus Tovards在19991年发布,其作者也是git分布式版本控制系统的作者。

linux发行版:其他公司基于Linux内核研发的Linux系统(Red Hat,ubuntu,等),包括内核,应用软件,系统工具,库文件,图形界面,Shell,包管理器

Linux系统架构和组成

内核-》系统库-》Shell-》应用程序

  • 内核:负责管理硬件和提供最基本的系统服务,主要组件包括;

    • 设备驱动程序

    • 进程管理

    • 内存管理

    • 文件系统

    • 网络协议栈

  • 系统库:支持应用开发的软件库,提供一些组件,常用的函数和接口,方便开发一些应用程序

    • C标准库

    • 数学库

    • 动态链接库

    • 线程库

    • 第三方库

  • shell:是一个命令行解释器,只是一个壳,是用户使用的一个接口,能够接受用户输入的各种命令。

  • 应用程序:平时使用的各种软件,如浏览器,编辑器等

vi和vim编辑器

vim是vi编辑器的增强版。

输入vim查看版本

编辑拆入

 vim hello.txt  #进入这个文件如果没有就创建一个,进去后默认是命令模式#输入i进入插入模式,输入要插入的内容“欢迎来到陈圣杰的服务器”,按esc退回到命令模式#在命令模式下按下a进入插入模式,在光标后插入。#在命令模式下按下o进入插入模式,在光标下一行插入。#命令模式下按下:进入尾行模式,输入wq保存并退出cat hello.txt #查看当前文件#在命令行模式下可以用HJKL控制光标的左下上右的移动#^跳转到行首,$跳转到行尾#按yy复制光标行内容#按p粘贴内容到光标下一行#按dd删除内容#按2yy,3p,将光标前两行内容复制,在光标行下面复制三次#尾行模式下输入set number,就会显示行号了(关闭,set nonumber)#快捷键Ctrl+f,Ctrl+b,分别是向前翻页向后翻页#按G跳转文件的最后一行gg跳转文件的第一行#100G跳转文件的第一百行#尾行模式输入50,跳转第50行

大小写IAO的不同插入方式:

  • 小写ia分别在光标前后插入

  • 大写IA分别在光标所在行的行首和行尾插入

  • 大小写O分别在当前上一回行和下一行插入内容

查找

#命令模式下输入/后面加上要查找的内容(从光标所在的位置向下查找)输入?即为向上查找#查找到后按n为查找下个#/hello\c查找忽略大小写或者:set ic忽略全局大小写

替换

:40,50s/hello/world/g  #把第一行和第五行的所有hello替换成world#按u键撤销

.vimrc文件

保存vi的配置信息的,设置行号,大小写忽略等,快捷键等

常用命令

基本上所有的命令都是命令名加参数构成的

文件与目录操作
  • cd 目录路径:切换目录(cd ~ 到主目录,cd .. 到上一级,cd - 到上次目录)

  • ls:列出目录内容

    • ls -a:显示所有文件(含隐藏文件.xxx、当前目录.、上一级目录..

    • ls -h:人性化显示大小(配合-lls -lh,如4.0K2.5M1.2G

    • ls -t:按修改时间排序(最新在前,常配合-lls -lt

    • ls -r:反向排序(如ls -lr反向按名称、ls -ltr反向按时间)

    • ls -d:只显示目录本身(如ls -ld /home仅展示/home目录信息)

    • ls -i:显示 inode 编号(如ls -i file.txt输出123456 file.txt

    • ls -F:文件名后加符号区分类型(/目录、*可执行文件、@软链接,普通文件无符号)

  • touch 文件名:创建空文件

  • cp 源 目标:复制(cp -r 递归复制目录)

  • mv 源 目标:移动 / 重命名

  • rm 文件名:删除(rm -r 删除目录,rm -f 强制删除,rm -rf 强制删除目录)

  • mkdir 目录名:创建目录(mkdir -p 创建多级目录)

  • rmdir 目录名:删除空目录

  • echo 命令用法

    • echo 文本:输出普通文本(无引号时合并多空格,如 echo Hello Linux

    • echo "文本/变量":输出带空格内容或解析变量(如 echo "姓名:$name"

    • echo -e "文本\n转义符":解析转义字符(\n 换行、\t 制表符,如 echo -e "行1\n行2"

    • echo -n "文本":输出后不换行(常用于输入提示,如 echo -n "请输入:"

    • echo 内容 > 文件名:将内容覆盖写入文件(如 echo "测试" > test.txt

    • echo 内容 >> 文件名:将内容追加写入文件(如 echo "追加" >> test.txt

    • echo '$变量/特殊符' :原样输出内容(单引号不解析变量 / 通配符,如 echo '$name'

文件内容查看
  • cat 文件名:查看全部内容

  • more 文件名:分页查看(空格翻页,q 退出)

  • less 文件名:灵活分页(支持上下滚动,q 退出)

  • head 文件名:查看前几行(head -n 10 前 10 行)

  • tail 文件名:查看后几行(tail -n 10 后 10 行,tail -f 实时监控)

文件权限管理
  • chmod 权限 文件名:修改权限(如 chmod 755 file.txtchmod u+x file.sh

  • chown 用户名:组名 文件名:修改所有者和组(chown user1 file 仅改所有者,chown :group1 file 仅改组)

系统信息查看
  • uname -a:查看系统内核信息

  • hostname:查看主机名

  • whoami:查看当前用户

  • df -h:磁盘空间

  • du -h 目录:目录占用空间

  • free -h:内存使用情况

  • top:动态进程资源(q 退出)

  • ps aux:查看所有进程(ps aux | grep 进程名 查找特定进程)

压缩与解压
  • tar -cvf 包名.tar 内容:打包

  • tar -zcvf 包名.tar.gz 内容:gzip 压缩

  • tar -jcvf 包名.tar.bz2 内容:bzip2 压缩

  • tar -zxvf 包名.tar.gz:解压 gzip

  • tar -jxvf 包名.tar.bz2:解压 bzip2

  • unzip 包名.zip:解压 zip

  • zip 包名.zip 内容:创建 zip

网络操作
  • ping 域名/IP:测试连通性

  • ifconfig/ip addr:查看网络信息

  • netstat -tuln:查看端口占用

  • curl 网址:访问 URL 并显示内容

  • wget 链接:下载文件

用户与组管理
  • useradd 用户名:创建用户

  • passwd 用户名:设置密码

  • userdel 用户名:删除用户

  • groupadd 组名:创建组

  • usermod -aG 组名 用户名:添加用户到组

其他常用命令
  • clear/Ctrl+L:清屏

  • history:查看命令历史(!编号 执行对应命令)

  • which 命令:查看命令路径

  • find 路径 -name 文件名:查找文件(如 find /home -name "*.txt"

  • grep "关键词" 文件名:搜索内容(grep -r 递归搜索目录)

  • man 命令:查看帮助手册(q 退出)

  • sudo 命令:以管理员权限执行

管道与重定向
  • |:管道(前命令输出作为后命令输入,如 ls -l | grep ".txt"

  • >:重定向输出(覆盖,如 ls > list.txt

  • >>:追加输出(不覆盖,如 echo "内容" >> file.txt

  • 2>:重定向错误输出(如 command 2> error.log

文件格式解读

输入ls -l

  • 第 1 字段-rw-r--r--):文件权限

    • 第 1 位:文件类型(- 普通文件,d 目录,l 软链接,b 块设备,c 字符设备)

    • 后 9 位:权限(分 3 组,每组 3 位,分别代表所有者、所属组、其他用户的 r读 /w写 /x执行权限)

  • 第 2 字段1):硬链接数量

    • 目录默认至少为 2(... 两个特殊链接)

  • 第 3 字段user):文件所有者(用户名)

  • 第 4 字段group):文件所属组(组名)

  • 第 5 字段4096):文件大小(单位:字节,目录通常显示 4096)

  • 第 6-8 字段10月 10 14:30):最后修改时间

  • 第 9 字段file.txt):文件名 / 目录名

    • 软链接会显示 -> 指向源文件(如 link.txt -> /home/file.txt

链接文件

在 Linux 中,链接文件类似于 Windows 中的 "快捷方式",用于创建文件或目录的引用,方便访问。主要分为两种类型:

  • 软链接(Symbolic Link,符号链接):相当于创建一个指向目标文件的 "快捷方式",独立于源文件存在

    • ln -s 源文件路径 链接文件路径

    • 特点:

      • 删除源文件后,软链接会失效(显示 "断裂" 状态)

      • 可跨文件系统创建

      • 权限通常显示为 lrwxrwxrwx(实际访问权限由源文件决定)

      • 可以链接到不存在的文件(称为 "悬空链接")

  • 硬链接(Hard Link):与源文件共享相同的 inode,本质上是同一个文件的不同名称

    • ln 源文件路径 链接文件路径

    • 特点:

      • 删除源文件后,硬链接仍能正常访问(因为 inode 未被删除)

      • 不能跨文件系统创建

      • 不能链接目录(多数 Linux 系统限制)

      • 与源文件拥有相同的权限和属性

在 Linux 中,“跨文件系统” 指的是不同的文件系统之间。这里的 “文件系统” 不是指文件夹结构,而是指被格式化并挂载到系统中的存储分区(如磁盘分区、U 盘、网络存储等),每个分区有独立的文件系统格式(如 ext4、NTFS、FAT32 等)。

目录结构

目录路径核心功能关键文件 / 子目录示例
/(根目录)所有目录的 “顶层父目录”,整个文件系统的起点,所有文件都嵌套在其下。直接包含 binetchomeusr 等核心目录
/bin存放 所有用户可执行的基础命令(系统启动必需,如 lsechocplsrmmvcat
/sbin存放 管理员(root)专用的系统命令(如系统启动、硬件管理相关)shutdown(关机)、ifconfig(网络配置)
/etc存放 系统和应用的配置文件(所有用户共享,修改需管理员权限)/etc/passwd(用户信息)、/etc/nginx(Nginx 配置)
/home普通用户的 “个人目录”,每个用户对应一个以用户名命名的子目录(如 user1/home/user1(用户 user1 的家目录)、/home/user2/Documents(文档目录)
/root管理员(root 用户)的 “个人目录”(相当于 root 的 home,普通用户无权访问).bashrc(root 的 Shell 配置)、downloads(root 的下载目录)
/usr存放 系统通用资源(非启动必需,类似 Windows 的 Program Files- /usr/bin:普通用户的通用命令(如 gitvim)- /usr/lib:应用依赖的库文件- /usr/share:共享资源(如字体、帮助文档)
/var存放 动态变化的文件(日志、缓存、临时数据等,大小会随系统运行增长)- /var/log:系统和应用日志(如 /var/log/syslog 系统日志)- /var/tmp:临时文件(重启后可能保留)- /var/www:部分服务器默认网站目录
/tmp存放 系统和应用的临时文件(重启后自动清空,所有用户可读写)应用运行时生成的临时缓存、临时脚本
/mnt用于 临时挂载外部存储设备(如 U 盘、移动硬盘、其他分区)/mnt/usb(挂载 U 盘)、/mnt/data(挂载额外数据盘)
/media(部分发行版)自动挂载外部设备的目录(如插入 U 盘后自动生成 /media/user1/U盘名无需手动创建,系统自动管理
/dev存放 硬件设备的 “设备文件”(Linux 中一切设备皆文件,通过此目录访问硬件)/dev/sda(第一块硬盘)、/dev/tty1(第一个终端)、/dev/zero(生成空数据的虚拟设备)
/proc存放 系统进程和内核的实时信息(虚拟目录,数据存于内存,不占磁盘空间)/proc/cpuinfo(CPU 信息)、/proc/meminfo(内存信息)、/proc/1(PID 为 1 的进程详情)
/sys存放 硬件设备和内核参数的实时配置(虚拟目录,类似 /proc,用于系统管理)/sys/class/net(网络接口信息)、/sys/block(块设备信息)
http://www.dtcms.com/a/466348.html

相关文章:

  • 南山区做网站公司h5商城网站是什么意思
  • 过拟合:机器学习中的“记忆“与“理解“之战
  • 网站有哪些类型和它的成功案例网站建设客户常见问题集锦
  • 贝叶斯压缩:智能模型压缩与不确定性管理的艺术
  • 【医学影像 AI】基于对抗学习的多层次密集传输知识蒸馏用于AP-ROP检测
  • Elasticsearch 7.12 图形化界面配置(亲测)
  • 将你的Django/Flask应用部署到云服务器(Docker实战)
  • 免费建站网站一级123456便宜做网站价格
  • 长阳网站建设十大邮箱app排行榜
  • 在网站中加入锚链接应该怎么做深圳做网站 信科网络
  • 德州市住房和城乡建设部网站百度如何推广产品
  • 收录查询 站长工具可以做渗透的网站
  • Unity2022Navigation系统打开方式
  • Python 循环详解:while 循环与 for 循环
  • 朝阳凌源网站建设南通做网站的
  • 网络层协议之IP协议
  • 易语言做网站登陆wordpress 整合论坛
  • 软件承接网站建设做儿童文学的网站
  • 视频字幕去除实用方法,轻松解决观看干扰问题
  • 大同市住房与城乡建设厅网站vuejs 网站开发
  • MySQL——数据库操作攻略
  • 记录一下在微信小程序中的使用MobX做状态管理
  • 如何用flashfxp上传网站防水网站的外链如何找
  • 网站seo计划.net 网站关键字
  • 7个免费的ui素材网站wordpress分类目录id
  • 小璇seo优化网站策划推广活动方案
  • [MT6631] MT6835+MT6631优化wifi吞吐量解决方案
  • 多轮智能对话系统架构方案(可实战):从基础模型到自我优化的对话智能体,数据飞轮的重要性
  • 外贸网站关键词优化北京软件开发公司名录
  • 企业网站怎样做seo优化博客