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

Linux、File System、Linux基本常用命令

一、File System 文件系统

Linux文件系统是操作系统用来组织、管理和存储问价及目录结构的方式。它不仅定义了如何将数据保存到磁盘上,还规定了用户如何与这些数据进行交互。

1、层次结构
  • 根目录(/):所有文件和目录都从根目录开始,它是整个文件系统的起点。每个文件或目录都有唯一的路径,以 / 开头。

  • 子目录:在根目录下可以创建多个子目录,例如 /home、/user、/var等,每个子目录可以包含更多的文件和子目录,形成树状的层次结构。

2、Ubuntu目录结构:

3、Ubuntu根目录下内容:
/bin        二进制文件,系统常规命令
/boot       系统启动分区,系统启动时读取的文件
/dev        设备文件
/etc        大多数配置文件
/home       普通用户的家目录
/lib        32位函数库
/lib64      64位库
/media      手动临时挂载点
/mnt        手动临时挂载点
/opt        第三方软件安装位置
/proc       进程信息及硬件信息
/root       临时设备的默认挂载点
/sbin       系统管理命令
/srv        数据
/var        数据
/sys        内核相关信息
/tmp        临时文件
/usr        用户相关设定
4、Ubuntu目录具体描述:
  • /:Linux文件系统根目录

  • /bin:存放基本命令和可执行文件,如 ls,cp,mv等

  • /boot:包含启动Linux所需的文件,包括内核镜像和引导加载程序配置

  • /dev:设备文件存放于此,表示硬件设备,如硬盘、打印机等

  • /etc:系统配置文件的位置,如网络设置、服务配置等

  • /home:普通用户的主目录,每个用户都有一个自己的子目录,如/home/user

  • /lib:共享库文件存放位置,供各种程序调用

  • /media 和 /mnt:用于挂载外部存储设备,如USB驱动器、CD-ROM等

  • /opt:第三方软件包通常安装在此目录下

  • /proc 和 /sys:虚拟文件系统,提供关于进程和系统状态的信息

  • /root:超级用户(root用户)的主目录

  • /sbin:存放系统管理员使用的命令和脚本,如 ifconfig,shutdown等

  • /tmp:临时文件存放处,重启后可能会被清空

  • /usr:用户程序及相关文件的存放位置,如应用程序、文档、源代码等

  • /var:变量数据存放地,如日志文件、邮件队列、数据库等

注意:不同的Linux系统或者不同版本的同一系统,文件系统目录结构可能都会有小的区别。

-   root // 用户名,root为超级用户

-   @ // 分隔符

-   app00 // 主机名称

-   ~ // 当前所在目录,默认用户目录为~,会随着目录切换而变化

-   // 表示当前用户是超级用户,普通用户为$

二、路径

路径(Path)是用来描述文件或目录在文件系统中的位置的一种方式。

绝对路径(Absolute Path):

  • 从根目录 / 开始,指向文件系统中的特定文件或目录

  • 每个绝对路径都以斜杠 / 开头,表示这是从文件系统的最顶端开始的路径。

    例:/home/nanxun/myDir/file.txt是一个绝对路径,它明确de指出了文件 file.txt 位于 /home/nanxun/myDir/ 目录下。

相对路径(Relative Path):

  • 不是从根目录开始,而是相对于当前工作目录的位置来指定文件或目录

  • 不以斜杠 / 开头

  • 凡是路径信息以 . 或 .. 开头的均为相对路径

    例:如果当前工作目录是 /home/nanxun,那么 myDir/file.txt就是一个相对路径,它指向的是 /home/nanxun/myDir/file.txt文件。

特殊路径:

  • . :当前路径下(一般会省略)

  • .. :上一层目录

  • / :根目录

  • ~ :当前用户的家目录

路径特点:

  • 路径中的第一个位置如果出现了/,那么这个 / 代表的是根目录,例如 /home/nanxun/hello.txt

三、基本命令
# 关闭系统
# 立即关机
shutdown -h now 或者 poweroff
# 两分钟后关机
shutdown -h 2# 关闭重启
# 立即重启
shutdown -r nown 或者 reboot
# 两分钟后重启
shutdown -r 2# 帮助命令(help)
ifconfig --help# 命令说明书 (man)
man shutdown# 切换用户(su)
su root
exit  // 退出当前用户

Linux中最基础常用的命令有:clear、pwd、ls、cd、touch、mkdir

clear:Clear the terminal screen (清除:清除终端屏幕)

pwd:Print Working Directory (打印工作目录)

1、ls

功能:显示文件和目录列表

常用选项如下:

  • -a,-all:显示所有文件,包括以点好( . )开头的隐藏文件

  • -t:按修改时间排序,最新的在前

  • -R:递归列出子目录

  • -d,--directory:显示目录本身而不是其内容,常与 -l一并使用来查看目录属性

  • -r,--reverse:反转排序顺序

  • -l:使用长格式列出信息,包括文件类型、权限、硬链接数、所有者、组、大小、最后修改时间和名称

注意:选项可以组合使用!

具体案例:

# 查看当前目录下的所有目录和文件
ls# 查看当前目录下的所有目录和文件(包含隐藏的文件)
ls -a# 列表查看当前目录下的所有目录和文件(列表查看,显示更多信息)
ls -l# 查询指定目录下的所有目录和文件
ls /bin# 列出当前目录下的文件和子目录,按修改时间排序(最新的在最上面)
ls -t# 列出当前目录下文件和子目录,其中递归列出子目录内信息
ls -R# 以长格式列出当前目录下所有文件,包含隐藏文件
ls -la
ls -al# 长格式列出目录myDir的信息
ls -ld myDir

ls详解:

ls -l a.txt

2、cd

功能:更改目录

格式:cd [directory_name]

应用案例:

# 切换工作目录到家目录下的myDir下
cd /home/nanxun/myDir# 切换到跟目录
cd /# 切换到根目录下的bin目录
cd /bin# 切换到上一级目录 
cd ../ 或者 cd ..# 切换到本目录下的名为myDir的文件目录,如果目录不存在报错
cd myDir# 回到家目录
cd ~# 切换到上次访问的目录
cd -# 再次借助相对路径切换工作目录
cd ./myDir# 切换到上一级的上一级目录
cd ../..# 切换到本目录下的名为myDir的文件目录
cd myDir(文件夹名)
3、touch

功能:创建新的、空文件或更新访问和修改时间

格式:touch filename(s)

应用案例:

# 创建2个新文件touch new.txt myfile# 注意:Linux中文件类型与后缀名无关,其类型根据创建命令确定​# 查看文件基本信息ls -l new.txt myfile​# 更新文件最后一次访问和修改时间touch new.txt​# 再次查看文件基本信息,注意观察最后一次修改和访问时间ls -l new.txt myfile
4、mkdir

功能:使用绝对或相对路径名创建目录

格式:mkdir [-p] directory_name

注意:创建子目录时,要保证父目录存在

应用案例:

# 在当前目录下创建一个名为tools的目录
mkdir tools# 在指定目录下创建一个名为tools的目录
mkdir /bin/tools# 新建目录dir2
# 注意:dir1必须存在才能创建dir2成功
mkdir dir1/dir2# 一条命令创建多个目录
mkdir dir3 dir4 dir5# 家目录下创建games目录
mkdir ~/games# 级联创建目录dir6不存在则先创建dir6,再创建dir7,最后创建dir8
mkdir -p dir6/dir7/dir8
5、删除目录与文件(rm)
# 删除当前目录下的文件
rm 文件名# 删除当前目录的文件(不询问)
rm -f 文件名# 递归删除当前目录下此名的目录
rm -r 文件夹名# 递归删除当前目录下此名的目录(不询问)
rm -rf 文件夹名# 将当前目录下的所有目录和文件全部删除
rm -rf *# 将根目录下的所有文件全部删除【慎用人!相当于格式化系统】
rm -rf /*
6、修改目录(mv)
# 修改目录名,同样适用与文件操作
mv 当前目录名 新目录名# 将/usr/tmp目录下的tool目录剪切到 /opt目录下面
mv /usr/tmp/tool /opt# 递归剪切目录中所有文件和文件夹
mv -r /usr/tmp/tool /opt
7、拷贝目录(cp)
# 将/usr/tmp目录下的tool目录复制到 /opt目录下面
cp /usr/tmp/tool /opt# 递归剪切复制目录中所有文件和文件夹
cp -r /usr/tmp/tool /opt
8、搜索目录(find)
# 查找/bin目录下的所有以a开头的文件或者目录
find /bin -nsme 'a*'
9、查看当前目录(pwd)
# 显示当前位置路径
pwd
10、编辑文件(vi、vim)
# 打开需要编辑的文件
vi 文件名
# 进入后,操作界面有三种模式:命令模式(command mode)、插入模式(Insert mode)和低行模式(last line mode)# 命令模式
- 刚进入文件就是命令模式,通过方向键控制光标位置,
- 使用命令“dd”删除当前整行
- 使用命令"/字段" 进行查找
- 按“i”在光标所在字符前开始插入
- 按“a”在光标所在字符后开始插入
- 按“o”在光标所在行的下面另起一新行插入
- 按“:”进入低行模式# 插入模式
- 此时可以对文件内容进行编辑。左下角会显示“-- 插入--”
- 按"ESC"进入低行模式# 低行模式
- 退出编辑:  :q
- 强制退出:  :q!
- 保存并退出: :wq
11、查看文件
# 查看文件最后一屏内容
cat a退出.txt  # PgUp向上翻页,PgDn向下翻页,“q”退出查看
less a.txt# 显示百分比,回车查看下一行,空格查看下一行,“q”退出查看
more a.txt# 查看文件的后100行,“Ctrl+C”退出查看
tail -100 a.txt
四、命令构成
基本格式

命令 [-选项] [参数]

command [-options] [arguent]

说明

  • command : 命令主体

  • [-options] : 命令选项(可选),借助它可以显示更加丰富的数据

  • [argument] : 命令参数(可选),命令操作的对象,文件、目录、用户和进程等,都可以作为参数使用

例如:list -l a.txt,用来显示 a.txt 的详细信息

注意事项:

  • 中间用空格隔开

  • 单行命令一般不超过256个字符

  • 大小写敏感

五、其他命令
  1. passwd命令,用于修改用户密码

    输入passwd命令,输入老密码,再输入新密码即可

  2. root(超级用户)设置密码:

    输入命名:sudo passwd root

    根据提示输入当前登录用户(非管理员)的开机登录密码

    再输入root用户的新密码2次即可

    注意:sudo命令表示临时(当前命令)将自己的操作权限提升为root权限。

  3. su命令

    Linux中使用su(switch user)命令 切换到另一个用户账户

    格式:su [选项] [用户名]

    具体应用(注意:切换用户时需要输入目标用户的密码

    # 切换到root用户 :susu​# 切换后退出登录,回到原来账户登录:exitexit​# 切换到特定用户: su - usernamesu - root 切换为root登录​# 执行单个命令并返回:su - username -c "command"su - root -c "pwd"

  4. 打包与解压
.zip、.rar # windows系统中压缩文件的扩展名
.tar  # Linux中打包文件的扩展名
.gz   # Linux中压缩文件的扩展名
.tar.gz # Linux中打包并压缩文件的扩展名

打包文件

tar -zcvf 打包压缩后的文件名  要打包的文件
# 参数说明:z:调用gzip压缩命令进行压缩;c:打包文件;v:显示运行过程;f:指定文件名# 示例
tar -zcvf a.tar file1 file2,...  // 多个文件压缩打包

解压文件

# 解包至当前目录
tar -zxvf a.tar# 指定解压的位置
tar -zxvf a.tar -C /usr------# 解压*.zip文件
unzip test.zip# 查看*.zip文件的内容
unzip -l test.zip

 

相关文章:

Linux、File System、Linux基本常用命令

一、File System 文件系统 Linux文件系统是操作系统用来组织、管理和存储问价及目录结构的方式。它不仅定义了如何将数据保存到磁盘上,还规定了用户如何与这些数据进行交互。 1、层次结构 根目录(/):所有文件和目录都从根目录开始…...

大数据治理:开启数据价值挖掘之旅

在当今数字化时代,数据呈爆炸式增长,大数据已经渗透到各个行业和领域,成为企业竞争和创新的关键驱动力。而大数据治理作为有效管理和利用大数据资源的核心手段,在教学领域也具有至关重要的地位。 一、大数据治理的内涵与重要性 大…...

Linux排查cpu运行负载过高

方式1:top 先输入top再输入1,查看 %CPU 列,找出占用 CPU 最多的进程 作用:切换显示每个逻辑 CPU 的使用情况。效果: 如果系统有多个 CPU 核心或超线程逻辑处理器,按下 1 会使得 top 分别显示每个逻辑 CPU…...

Cobalt Strike 4.8 用户指南-第十四节 Aggressor 脚本

14.1、什么是Aggressor脚本 Aggressor Script 是Cobalt Strike 3.0版及更高版本中内置的脚本语言。Aggressor 脚本允许你修改和扩展 Cobalt Strike 客户端。 历史 Aggressor Script 是 Armitage 中开源脚本引擎Cortana的精神继承者。Cortana 是通过与 DARPA 的网络快速跟踪计…...

C++并发与多线程(高级函数async)

async 在 C 中,async 关键字用于实现异步编程,它允许你定义异步操作,这些操作可以在后台执行,而不会阻塞当前线程。这是 C11 引入的特性,与 std::async 函数和 std::future 类一起使用。与thread函数模板的区别在于as…...

安卓课设版算法计算器

安卓课设版算法计算器(HNUST) 前言: 如果只想看函数使用说明请跳转到“四、使用函数介绍” 该版本为课设版,富含多个界面,是前版的plus版本,进行了更多的复杂化操作,故因此会觉得对于计算器有点…...

X-Forwarded-For注入漏洞

0x00环境介绍 靶机http://219.153.49.228:48033,通过注入完成找到网站的key。 1|00x01复现过程 1.访问网站使用admin/admin登入,用burpsuite截包寻找注入点 >>截到的包,正常放包回显内容 >>加X-forwarded-for:1.1.1.1回显IP数据改变&…...

Linux - MySQL迁移至一主一从

Linux - MySQL迁移至一主一从 迁移准备安装MySQL ibd文件迁移原服务器操作目标服务器操作 一主一从增量同步异常解决结尾 首先部分单独安装MySQL,请参考Linux - MySQL安装,迁移数据量比较大约400G左右且网络不通故使用文件迁移,需开启一段时间…...

《变形金刚:赛博坦的陨落》游戏启动难题:‘buddha.dll’缺失的七大修复策略

《变形金刚:赛博坦的陨落》游戏启动时提示buddha.dll缺失:原因与解决方案 作为一名软件开发从业者,我在日常工作中经常遇到电脑游戏运行时出现的各种问题,如文件丢失、文件损坏和系统报错等。今天,我们就来探讨一下《…...

51c嵌入式~单片机~合集2

我自己的原文哦~ https://blog.51cto.com/whaosoft/12362395 一、不同的电平信号的MCU怎么通信? 下面这个“电平转换”电路,理解后令人心情愉快。电路设计其实也可以很有趣。 先说一说这个电路的用途:当两个MCU在不同的工作电压下工作&a…...

java Resource 记录

Java 注解 Resource 是一个标准的 Java 注解,用于注入资源。它可以用于注入任何资源,如文件、数据库连接、用户定义的资源等。它可以通过名称或类型进行注入。 当你想要注入一个bean到你的类中时,你可以使用Resource注解。 解决方案1&#…...

Avalonia 开发环境准备

总目录 前言 介绍如何搭建 Avalonia 开发环境。 一、在线开发环境搭建 请先安装您选择的受支持的IDE。Avalonia 支持 Visual Studio、Rider 和 Visual Studio Code。 详见:https://docs.avaloniaui.net/zh-Hans/docs/get-started/install 1. 使用 Visual Studio 20…...

C# 中 Console.WriteLine($“{DateTime.Now.Date}“); win 和 docker容器输出不同

Console.WriteLine($"{DateTime.Now.Date}"); //windowns输出:2024/12/10 0:00:00 //docker容器输出:12/10/2024 00:00:00 这是由于 不同的文化区域(CultureInfo)设置 导致的时间格式差异。在 Windows 系统…...

回型矩阵:JAVA

解题思路: 通过定义四条边界;top,left,right,bottom,来循环,当top>bottom&&left>right的时候循环终止 循环结束的条件: 链接:登录—专业IT笔试面试备考平台_牛客网 来源:牛客网 题目描述…...

从零开始学习 sg200x 多核开发之 sophpi 编译生成 fip.bin 流程梳理

本文主要介绍 sophpi 编译生成 fip.bin 流程。 1、编译前准备 sophpi 的基本编译流程如下: $ source build/cvisetup.sh $ defconfig sg2002_wevb_riscv64_sd $ clean_all $ build_all $ pack_burn_image注: 需要在 bash 下运行clean_all 非必要可以不…...

python--在服务器上面创建conda环境

今天刚开始使用服务器的时候使用上面的公共环境发现老师缺少模块&#xff0c; [guoyupingcins195 ~]$ conda --version Traceback (most recent call last): File "/home/miniconda3/bin/conda", line 12, in <module> from conda.cli import main Fil…...

day15 python(3)——python基础(完结!!)

【没有所谓的运气&#x1f36c;&#xff0c;只有绝对的努力✊】 目录 1、函数 1.1 函数传参中的拆包 1.2 匿名函数的定义 1.3 匿名函数练习 1.4 匿名函数应用——列表中的字典排序 2、面向对象 OOP 2.1 面向对象介绍 2.2 类和对象 2.3 类的构成和设计 2.4 面向对象代码…...

/:087启动游戏时提示丢失”d3dx···.dll””VCOMP···.dll”

/:087启动游戏时提示丢失”d3dx.dll””VCOMP.dll”或遇到应用程序无法正常启动&#xff08;0xc000007b&#xff09;和游戏有图像没有声音等情况。 主要是因为系统缺少大型游戏/软件运行的必备组件&#xff0c;这些组件有DirectX&#xff0c;Visual C2010&#xff0c;2012&…...

利用PHP和phpSpider进行图片爬取及下载

利用PHP和phpSpider进行图片爬取及下载&#xff0c;可以遵循以下步骤。phpSpider是一个开源的PHP爬虫框架&#xff0c;它可以帮助你轻松地抓取网页内容。以下是一个基本的步骤指南&#xff1a; 1. 安装phpSpider 首先&#xff0c;你需要确保你已经安装了Composer&#xff08;…...

企业架构划分探讨:业务架构与IT架构的利与弊

在企业架构&#xff08;EA&#xff09;的江湖里&#xff0c;大家一直致力于如何把企业的复杂性简化成有条有理的架构蓝图。有人选择把企业架构分成业务架构和IT架构&#xff0c;而IT架构又进一步细分为应用架构、数据架构和技术架构。但一提到这种划分方式&#xff0c;总有人跳…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)

文章目录 1.什么是Redis&#xff1f;2.为什么要使用redis作为mysql的缓存&#xff1f;3.什么是缓存雪崩、缓存穿透、缓存击穿&#xff1f;3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

算法岗面试经验分享-大模型篇

文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer &#xff08;1&#xff09;资源 论文&a…...

基于IDIG-GAN的小样本电机轴承故障诊断

目录 🔍 核心问题 一、IDIG-GAN模型原理 1. 整体架构 2. 核心创新点 (1) ​梯度归一化(Gradient Normalization)​​ (2) ​判别器梯度间隙正则化(Discriminator Gradient Gap Regularization)​​ (3) ​自注意力机制(Self-Attention)​​ 3. 完整损失函数 二…...

push [特殊字符] present

push &#x1f19a; present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中&#xff0c;push 和 present 是两种不同的视图控制器切换方式&#xff0c;它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...

【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道

文/法律实务观察组 在债务重组领域&#xff0c;专业机构的核心价值不仅在于减轻债务数字&#xff0c;更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明&#xff0c;合法债务优化需同步实现三重平衡&#xff1a; 法律刚性&#xff08;债…...