【Linux】初学者指令指南

这里是**IF’MAXUE ** ,欢迎各位佬互三,互关 ! ! ! ! ! !

在这里插入图片描述

一、知识铺垫

1.1登入账号

首先在xshell8的界面输入ssh 用户名@公网ip,跳出SSH用户验证界面,输入密码即可进入
(SSH是一种网络协议,通过加密和认证机制实现安全访问和文件传输)

在这里插入图片描述

1.2 创建和删除普通账号

Linux属于多用户操作系统

添加普通用户的操作步骤

  1. adduser 用户名
  2. passwd(密码)用户(输入密码时,是不显示密码的)
  3. passwd命令用于更改设置用户密码
    删除普通账号的步骤 userdel -r 用户名@

1.3 操作系统概念

操作系统是一款进行软硬件资源管理的软件,对于Linux是一款具体的操作系统的一个品类,而centos7是一款集体的Linux操作系统,计算机是一个工具,被人使用的工具
![[Pasted image 20250601124232.png]]

【操作系统的作用】:![[Pasted image 20250601125200.png]]

  1. 提供人机交互接口,早期计算机的操作需要通过硬开关进行控制,操作系统最大的功能可以避免直接操作硬件带来的麻烦
  2. 提供了计算机软硬件资源管理
  3. 对下层操作系统提供了基本的管理工作,让多种硬件处于一个稳定、高效、安全的巩固走环境
  4. 对上层操作系统提供了一个稳定、高效、安全的运行环境

1.4 Xshell相关快捷键

  1. Alt+Enter:全屏
  2. Ctrl+D:退出
  3. Ctrl+insert:复制
  4. Shift+insert:粘贴
  5. 这里不支持ctrl c和ctrl v快捷键

1.5 文件

当在电脑上进行操作,实际上是通过操作系统来控制文件和文件夹。操作系统提供图形用户界面(GUI)和命令行界面(CLI),让你方便浏览、创建、删除、移动和修改文件和文件夹。

桌面属于文件夹
登入windows进行如下操作

  1. 确定你的用户名
  2. 根据用户名,找到该用户名下的桌面文件夹
  3. 将桌面文件夹显示成为图形化界面
    文件占用内存
    文件占用内存=文件属性+文件内容
    ![[Pasted image 20250601131224.png]]

文件虽然显示大小是0kb,但是同样会占用内存。由于【文件=文件属性+文件内容】,这里显示的所有属性都是数据,在内存中都是要保存的

1.6 路径

windows下路径显示方式
D:\softword\java\Thread\src
Linux下路径显示方式
[root@hcss-ecs-5726 yhy]# pwd /root/yhy`

路径由文件夹+末尾文件夹或者文件夹+普通文件组成
这里的文件夹通常叫做目录,但是一个目录中可以有文件,也可以有目录

仔细观察:

  • windows路径分隔符:\
  • Linux路径分隔符:/

绝对路径和相对路径

绝对路径:以根目录为中心,找到目标文件的经过的所有路径
相对路径:以当前目录中心,找到目标文件的经过的所有路径(用.和…)

1.7 .和…的用法

隐藏文件

无论是Linux还是在Windows下,都有隐藏文件的存在
在Linux操作系统下,我们用ls -a指令显示隐藏文件
![[Pasted image 20250601132540.png]]

关于查找Linux的隐藏文件,我们需要用到ls-la或者ll指令查看。该指令的作用是显示所有的子目录音系和文件信息。而ls -la是列出目录下的所有文件,包括以 . 开头的隐含文件。任何目录下,都会默认具有两个隐藏目录.和

.的当前用法

![[Pasted image 20250601134950.png]]
.两种用法】:

  1. 可以表示当前路径
  2. 指定执行当前目录下的一个可执行文件,表示明确该文件在该目录下,可以直接执行该可执行文件

…的当前用法

![[Pasted image 20250601135221.png]]

【用法】:

  1. 表示上级路径,可以方便我们进行路径的回退。毕竟不光要进去,也要可以出来

二、常见指令介绍

2.1 pwd指令

【语法】:pwd
【功能】::显式用户当前所在的目录

![[Pasted image 20250601142236.png]]

2.2 cd指令

【语法】:cd 目录名(不是文件名)
【功能】:改变工作目录,将当前工作目录改变到指定目录下

常用功能

  • 返回上级目录】:cd …
  • 以绝对路径跳转目录】:cd /home/litao/linux/
  • 以相对路径跳转目录】:cd …/day02/
  • 【进入用户家目录】:cd~
  • 【返回最近的访问目录】:cd-
    cd~

作用】:

  • 跳转到我们最近一次所处的路径下,这有助于我们是实现处理两个路径的快速切换

cd -:

【作用】:

  • 跳转到我们最近访问目录。

![[Pasted image 20250601143007.png]]

2.3家目录

家目录(Home Directory)是操作系统为每个用户分配的一个专用目录,用于存储该用户的个人文件、配置文件和数据

【windows中的用户默认的家目录】

C:\Users\用户名

【Linux下指定用户的家目录】

对于root账号:默认的家目录/root—>超级管理员账号

对于普通用户:默认的家目录/home/新建的用户名

关于以上两点,任何一个用户,首次登录所处的路径都是自己的家目录,关于这点可以使用whoami指令查看当前正在使用Linux系统的用户名

2.4whoami指令

【语法】:whoami
【功能】::查看当前正在使用Linux系统的用户名
![[Pasted image 20250601144739.png]]

2.5重新认识指令

目前阶段来说指令的本质都是程序。指令、程序、可执行程序都是一回事,并且也是文件。

2.6which指令

【语法】:which
【功能】::要求系统打印出我所制定的指令名称在系统中所在路径位置

![[Pasted image 20250601150231.png]]

2.7alias指令

【语法】:alias
【功能】::给其他命令起一个别名。

![[Pasted image 20250601150356.png]]

–color== auto表示是否带上颜色

2.8 ls指令

【语法】:ls [选项] [目录或文件]
【功能】::对于目录,该命令列出该目录下的所有子目录于文件。对于文件,将列出文件名以及其他信息

【选项】:【常用选择】:主要掌握-d -l -a选项,剩下有需要记
[-a ]:列出目录下的所有文件,包括以 . 开头的隐含文件。
[-d ]:将目录象文件一样显示,而不是显示其下的文件。 如: ls –d 指定目录
[-i ]:输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
[-k ]:以 k 字节的形式表示文件的大小。 ls –alk 指定文件
[-l] :列出文件的详细信息。
[-n] :用数字的 UID,GID 代替名称。 (介绍 UID, GID)
[-F ]:在每个文件名后附上一个字符以说明该文件的类型, “*”表示可执行的普通文件; “/”表示目录; “@”表示符号链接; “|”表示FIFOs; “=”表示套接字(sockets)。(目录类型识别)
[-r ]:对目录反向排序。
[-t ]:以时间排序。
[-s] :在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
[-R ]:列出所有子目录下的文件。 (递归)
[-1 ] :一行只输出一个文件。

![[Pasted image 20250601150711.png]]

2.9 touch指令

【语法】:touch [选项]… 文件…
【功能】:touch命令参数可改变文档或目录的时间,包括存储时间和更改时间,或者新建一个不存在的文件

【常用选项】[有需要记]:

-a 或–time=atime或–time=access或–time=use只更改存取时间。
-c 或–no-create 不建立任何文档。
-d 使用指定的日期时间,而非现在的时间。
-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
-m 或–time=mtime或–time=modify 只更改变动时间。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t 使用指定的日期时间,而非现在的时间

2.10stat指令和文件ACM时间

【语法】:stat +文件
【功能】::进行查看,文件或目录的不同时间戳

  1. Access Time (atime)】:文件最后一次被访问(读取)的时间。
  2. Modify Time (mtime)】:文件内容最后一次被修改的时间。
  3. Change Time (ctime)】:文件元数据(如权限)最后一次被修改的时间。

2.11mkdir(重要)

【语法】:mkdir[选项] dirname…
【功能】::在当前目录下创建一个名为"dirname"的目录

常用选项】:

  • [-p (parent )] :可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后系统将自动建立好那些尚不存在的目录,**既一次性建立多个目录。**如果没有添加-p选项,就不能一次性建立多个目录。

2.12tree指令

【语法】:tree
【功能】:用于以树状图形式显示文件和目录的层次结构

如果使用tree指令,出现报错可能就是该指令没有安装。如果以后有指令需要安装使用,可以通过百度等搜索引擎进行查找

  • 如果你的Linux系统是Ubuntu版的,输入下面命令安装即可

sudo apt-get install tree

  • 如果你的Linux系统是cent os 版的,输入下面命令安装即可

yum -y install tree

2.13rmdir指令

【语法】:rmdir
【功能】::删除指令。

  • 语法】:rmdir [-p] [dirName]
  • 适用对象】:具有当前目录操作权限的所有使用者
  • 【功能】:只能删除空目录
  • 常用选项】:[-p ]当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。

![[Pasted image 20250601154844.png]]

2.14rm指令

【语法】:rm[-f-i-r-v] [dirName/dir]
【功能】:删除文件或指令,rm指令可以同时删除文件或指令

【常用选项】:
-f 即使文件属性为只读(即写保护),也是直接删除。强制意味
-i 删除前逐一询问确认
-r 删除目录及其下所有文件
![[Pasted image 20250601155353.png]]

  • 如果是root账号,对于超级管理员来说,这里会温馨地提示你是否要删除。
  • 如果是普通账号,那么你删除是没有提示的,因为主不在乎。

2.15man指令(重要)

Linux的命令有很多参数,我们可以通过联机手册查看

【语法】:man 【选项】命令
【功能】::通过联机手册查看命令参数
【安装命令】:yum -y install man

【选项】:

  • -k 根据关键字搜索联机帮助
  • num 只在第num章节找
  • -a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕
  • 可以通过↑↓键进行滑动阅读

解释一下,手册分为8章

[1] 是普通的命令,可执行程序
[2 ]是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文
件)
[3 ]是C语言库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件
5 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
6 是给游戏留的,由各个游戏自己定义
7 是附件还有一些变量,比如向environ这种全局变量在这里就有说明
8 是系统管理用的命令,这些命令只能由root使用,如ifconfig

  • 这里主要知道1,2,3号手册,重要的是2号手册,在之后再提及。这里手册是通过C语言 + 汇编写的,关于C++,java,python相关的知识不能使用man手册,就算查找关于C语言相关知识也不推荐,man手册跟版本属于强相当使用手册的时候,同时注意man手册不全。
  • 手册从第一章开搜索,找到对应章节就会停下,由于Linux存在printf命令,那么将在第一章就会停下来,如果需要打印出C语言库中printf函数,可以使用num选项制定章节查找man 3 printf这里printf和C语言中printf函数实现类似功能,但是底层是毫无关系的
    ![[Pasted image 20250601160650.png]]

2.16mv指令

【语法】:mv [选项] 源文件或目录(src) 目标文件或目录
【功能】::用来移动文件或者将文件改名

【三种使用场景】

  1. 【在指定的目录下,对一个文件或者目录进行重命名】
    • mv test.txt log.txt 将test.txt改名成为log.txt
  2. 【将指定目录下的文件或者目录,‘剪切’到指定的目录下】
      • mv /mydir .(当前目录) [mv src path/]
  3. 不仅仅要剪切,我还要剪切的同时,顺便进行一下重命名
  • mv mydir /111dir [mv src path/newname]
    存在同名文件

Linux中同一个目录下,不允许存在同名文件,那么mv同名文件时,会询问是否需要覆盖。

  • -f : force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖

2.17* 通配符指令

*** 表示一个通配符,匹配任意文件名或路径的一种特殊符号,可以用来表示多个文件或目录。**在命令中使用通配符可以方便地操作多个文件或目录,特别是在复制、移动或删除文件时非常有用。

  • [h* x] :表示匹配任意数量的h,后面跟着一个 x,h可能出现零次或多次。
  • [h.* x] :表示匹配以h开头,以 x 结尾
    ![[Pasted image 20250601162718.png]]

2.18nano指令

【语法】:nano
【功能】:简单的文本编辑器

![[Pasted image 20250601162745.png]]

在Linux下写出代码的步骤:

  1. nano 源文件.c
  2. ctrl x退出
  3. [y]+ [Enter回车] 确定退出
  4. gcc code.c gcc编译
  5. ./a.out 在当前路径执行可执行文件中程序(打印函数printf("Linux");)
  6. cat code.c #本质是显式打印文件内容

![[Pasted image 20250601162915.png]]

2.19cp指令

【语法】::cp [选项] 源文件或目录(src) 目标文件或目录(dst)
【功能】::复制文件或目录

说明

  • cp指令用于复制文件或目录
  • 【带路径的文件名】:拷贝到指定目录,顺便进行重命名,src、dst都可以携带绝对或者相对路径进行拷贝。
  • 如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的[所有文件或目录]复制到此目录中。
  • 若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会有出现错误信息

![[Pasted image 20250601161604.png]]

【常用选项】:

-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在,
-i 或 --interactive 覆盖文件之前先询问用户
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

cp -fr 可用于强制递归复制文件或目录,但目标目录必须存在。建议在使用之前确保目标目录已经创建。

评论 60
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IF'Maxue

爱意随风起,而你的打赏会变成风

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值