Linux基础命令

简介: Linux基础命令

Linux是一个强大的操作系统,它提供了许多常用的命令行工具,可以帮助我们用于管理文件、目录、进程、网络和系统配置等。以下是一些基础的Linux命令:

一、Linux的目录结构

Linux的目录结构是一个树型结构

Windows 系统可以拥有多个盘符, 如 C盘、D盘、E盘

Linux没有盘符这个概念, 只有一个根目录 /, 所有文件都在它下面

在Linux系统中,路径之间的层级关系,使用:/ 来表示

在Windows系统中,路径之间的层级关系,使用: \ 来表示

二、Linux命令入门

1,ls命令

ls命令的作用是列出目录下的内容,语法细节如下:

ls [-a -l -h] [Liunx路径]

-a -l -h 是可选的选项

Linux路径是此命令可选的参数

当不使用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容

-a选项,表示:all的意思,即列出全部文件(包含隐藏的文件/文件夹)

-l选项,表示:以列表(竖向排列)的形式展示内容,并展示更多信息

-h 表示以易于阅读的形式,列出文件大小,如K、M、G

-h选项必须要搭配 -l 一起使用

2,cd 切换工作目录

当Linux终端(命令行)打开的时候,会默认以用户的HOME目录作为当前的工作目录

我们可以通过cd命令,更改当前所在的工作目录。

cd命令来自英文:Change Directory

语法: cd [Liunx路径]

cd命令无需选项,只有参数,表示要切换到哪个目录下

cd命令直接执行,不写参数,表示回到用户的HOME目录

3,pwd 查看当前工作目录

通过ls来验证当前的工作目录,其实是不恰当的。

我们可以通过pwd命令,来查看当前所在的工作目录。

pwd命令来自:Print Work Directory

语法: pwd

pwd命令,无选项,无参数,直接输入pwd即可

4,mkdir 创建新的文件夹

mkdir来自英文:Make Directory

语法:mkdir [-p] Liunx路径

参数必填,表示Linux路径,即要创建的文件夹的路径,相对路径或绝对路径均可

-p选项可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录

mkdir -p 选项

如果想要一次性创建多个层级的目录,如下图

5,touch 创建文件

可以通过touch命令创建文件

语法:touch Liunx路径

touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可以使用

6,cat命令 查看文件内容

准备好文件内容后,可以通过cat查看内容。

语法:cat Liunx路径

cat同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用

7,more命令查看文件内容

more命令同样可以查看文件内容,同cat不同的是:

cat是直接将内容全部显示出来

more支持翻页,如果文件内容过多,可以一页页的展示

语法:more Liunx路径

同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用

在查看的过程中,通过空格翻页

通过q退出查看

8,cp命令复制文件文件夹

cp命令可以用于复制文件\文件夹,cp命令来自英文单词:copy

语法:cp [ -r ] 参数1 参数2

-r选项,可选,用于复制文件夹使用,表示递归

参数1,Linux路径,表示被复制的文件或文件夹

参数2,Linux路径,表示要复制去的地方

复制文件夹,必须使用-r选项,否则不会生效

9,mv移动文件或文件夹

mv命令可以用于移动文件\文件夹,mv命令来自英文单词:move

语法: mv 参数1 参数2

参数1,Linux路径,表示被移动的文件或文件夹

参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在

如下图,目标不存在,则有改名的效果

10,rm删除文件、文件夹

rm命令可用于删除文件、文件夹

rm命令来自英文单词:remove

语法:rm [ -r -f ] 参数1 参数2 … … … 参数N

同cp命令一样,-r 选项用于删除文件夹

-f 表示force,强制删除(不会弹出提示确认信息)

普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示

所以一般普通用户用不到-f选项

参数1、参数2、…、参数N 表示要删除的文件或文件夹路径,按照空格隔开

删除文件夹,如下图,必须使用-r选项才可以

演示强制删除,-f选项

可以通过 su - root,并输入密码123456(和普通用户默认一样)临时切换到root用户体验

通过输入exit命令,退回普通用户。

rm命令支持通配符 ,用来做模糊匹配
符号
表示通配符,即匹配任意内容(包含空),示例:

test*,表示匹配任何以test开头的内容

*test,表示匹配任何以test结尾的内容

test,表示匹配任何包含test的内容

演示:

删除所有以test开头的文件或文件夹

11,which 命令查找

我们在前面学习的Linux命令,其实它们的本体就是一个个的二进制可执行程序。

和Windows系统中的.exe文件,是一个意思。

我们可以通过which命令,查看所使用的一系列命令的程序文件存放在哪里

语法:要查找的命令

12,find命令 - 按文件名查找文件

在Linux系统中,我们可以通过find命令去搜索指定的文件。

语法:find 起始路径 -name “被查找的文件夹”

为了确保后续演示,拥有最大的权限,可以在整个系统完成搜索

我们可以切换到root用户以获得管理员权限

执行命令:su -root

su - root

输入密码:123456(和你普通用户的密码一样)

按文件大小查找文件

语法:find 起始路径 -size +| -n [ KMG ]

+、- 表示大于和小于

n表示大小数字

kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB

示例:

查找小于10KB的文件: find / -size -10k

查找大于100MB的文件:find / -size +100M

查找大于1GB的文件:find / -size +1G

13,grep 通过关键字过滤文件行

可以通过grep命令,从文件中通过关键字过滤文件行。

语法:gerp [-n] 关键字 文件路径

选项-n,可选,表示在结果中显示匹配的行的行号。

参数,关键字,必填,表示过滤的关键字,带有空格或其它特殊符号,建议使用””将关键字包围起来

参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口

过滤itheima关键字

过滤code关键字,并显示行号

14,wc命令做数量统计

可以通过wc命令统计文件的行数、单词数量等

语法: wc [-c -m -l -w] 文件路径

选项,-c,统计bytes数量

选项,-m,统计字符数量

选项,-l,统计行数

选项,-w,统计单词数量

参数,文件路径,被统计的文件,可作为内容输入端口

不带选项,统计文件

15,管道符

学习了grep命令后,我们在来学习一个新的特殊符号,管道符:|

管道符的含义是:将管道符左边命令的结果,作为右边命令的输入

管道符的应用非常多

ls | grep Desktop,过滤ls的结果

find / -name “test” | grep “/usr/lib64”,过滤结果,只找路径带有/usr/lib64的结果

cat itheima.txt | grep itcast | grep itheima,可以嵌套使用哦

cat itheima.txt的结果给 grep itcast 使用

cat itheima.txt | grep itcast 的结果给 grep itheima使用

16,echo命令在命令行内输出指定内容

语法:

无需选项,只有一个参数,表示要输出的内容,复杂内容可以用””包围

演示:echo 输出内容

在终端上显示:Hello Linux

带有空格或\等特殊符号,建议使用双引号包围

因为不包围的话,空格后很容易被识别为参数2,尽管echo不受影响,但是要养成习惯哦

17,重定向符

我们再来学习两个特殊符号,重定向符:>和>>

,将左侧命令的结果,覆盖写入到符号右侧指定的文件中

,将左侧命令的结果,追加写入到符号右侧指定的文件中

演示:

echo “Hello Linux” > itheima.txt

echo “Hello itheima” > itheima.txt,再次执行,覆盖新内容

echo “Hello itcast” >> itheima.txt,再次执行,使用>>追加新内容

18,tail 查看文件尾部内容,跟踪文件的最新更改

使用tail命令,可以查看文件尾部内容,跟踪文件的最新更改,

语法:tail [ -f -num ] Liunx路径

参数,Linux路径,表示被跟踪的文件路径

选项,-f,表示持续跟踪

选项, -num,表示,查看尾部多少行,不填默认10行

查看/var/log/vmware-network.log文件的尾部10行:tail /var/log/vmware-network.log

查看/var/log/vmware-network.log文件的尾部3行:tail -3 /var/log/vmware-network.log

使用-f选项,可以持续跟踪文件更改

复制一个新的FinalShell的标签

在第一个标签中,执行:touch test.txt,创建一个test.txt文件

在第一个标签中,执行:tail -f test.txt,持续跟踪文件更改

在第二个标签中,多次执行:echo “内容” >> test.txt,向文件追加内容

观察第一个标签的变化

三、vi\vim编辑器

vi\vim是visual interface的简称, 是Linux中最经典的文本编辑器

同图形化界面中的 文本编辑器一样,vi是命令行下对文本文件进行编辑的绝佳选择。

vim 是 vi 的加强版本,兼容 vi 的所有指令,不仅能编辑文本,而且还具有 shell 程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。

1、vi\vim编辑器的三种工作模式

命令模式(Command mode)

命令模式下,所敲的按键编辑器都理解为命令,以命令驱动执行不同的功能。

此模型下,不能自由进行文本编辑。

输入模式(Insert mode)

也就是所谓的编辑模式、插入模式。

此模式下,可以对文件内容进行自由编辑。

底线命令模式(Last line mode)

以:开始,通常用于文件的保存、退出。

快速体验

使用:vim hello.txt,编辑一个新文件,执行后进入的是命令模式

在命令模式内,按键盘 i ,进入输入模式

在输入模式内输入:itheima and itcast.

输入完成后,按esc回退会命令模式

在命令模式内,按键盘 : ,进入底线命令模式

在底线命令内输入:wq,保存文件并退出vi编辑器

2、命令模式快捷键

3、底线命令模式

编辑模式没有什么特殊的,进入编辑模式后,任何快捷键都没有作用,就是正常输入文本而已。

唯一大家需要记住的,就是:通过esc,可以退回到命令模式中即可。

在命令模式内,输入: ,即可进入底线命令模式,支持如下命令:


相关文章
|
3天前
|
Linux Shell 开发工具
|
3天前
|
网络协议 安全 Linux
|
9天前
|
运维 监控 网络协议
Linux抓包命令tcpdump使用技巧大全
【7月更文挑战第10天】
29 5
Linux抓包命令tcpdump使用技巧大全
|
2天前
|
存储 安全 Ubuntu
Linux dump命令教程
绍了Linuxdump命令的功能,包括用于备份整个文件系统的全备份和增量备份,以及如何在不同Linux发行版中安装和使用dump命令。
39 16
|
6天前
|
存储 安全 Linux
Linux命令sync详解
`sync`命令在Linux中用于将内存缓冲区的数据强制写入磁盘,保证数据持久性和一致性。它在关机、重启或重要文件操作前后使用,以防数据丢失。工作原理是强制将内存中的数据同步到磁盘,特点是阻塞式执行且通常无需参数。常见用法包括安全关机、数据备份和配置文件修改后确保更改生效。应注意,过度使用可能影响性能,应适时使用`fsck`检查文件系统一致性。
|
6天前
|
安全 数据管理 Shell
Linux命令su详解
`su`命令在Linux中用于切换用户身份,常用于权限管理。它允许用户无须注销当前会话就切换到另一个用户,尤其是root。`su`有多种选项,如`-`或`--login`加载目标用户环境,`-c`执行指定命令后返回。使用时需注意权限安全,建议用`sudo`以减少风险。通过限制`/etc/pam.d/su`可加强访问控制。`su`在系统维护和数据管理中扮演角色,但不直接处理数据。
|
6天前
|
存储 运维 安全
Linux命令stat:深入了解文件与文件系统状态
`stat`命令在Linux中用于显示文件和文件系统的详细状态,包括权限、大小、时间戳等。它通过读取inode获取信息,特点是显示全面、易用且支持多种参数,如`-c`自定义格式,`-f`查看文件系统状态,`-L`处理符号链接。例如,`stat example.txt`显示文件详情,`stat -c "%n 的大小是 %s 字节" example.txt`输出文件大小。理解`stat`有助于系统管理和故障排查。
|
6天前
|
关系型数据库 MySQL Linux
Linux命令systemctl详解
`systemctl`是Linux系统用于管理systemd服务的核心命令,它与systemd守护进程交互,实现启动、停止、重启服务及查看服务状态等功能。主要参数包括`start`、`stop`、`restart`、`status`、`enable`和`disable`等。例如,启动Apache服务使用`systemctl start httpd.service`,查看服务状态用`systemctl status <service>`。使用时需注意权限,服务名通常以`.service`结尾,但命令中可省略。最佳实践包括利用tab键补全、定期查看服务状态和合理配置服务自启。
|
6天前
|
安全 Linux 数据安全/隐私保护
Linux命令strings详解
`strings`是Linux工具,用于从二进制文件中提取可打印字符串,常用于文件分析、安全审计和逆向工程。它可以识别至少4个连续可打印字符的序列,并支持多种参数,如`-n`调整最小长度,`-f`显示文件名。示例用法包括`strings /bin/ls`和`strings -n 6 /usr/bin/uptime | grep GLIBC`。注意敏感信息泄露,结合其他命令可增强分析能力。
|
6天前
|
存储 监控 Linux
stdbuf命令在Linux中的深度解析
`stdbuf`是Linux工具,用于控制命令的stdin、stdout和stderr的缓冲模式。它可以设置为无缓冲、行缓冲或块缓冲,以优化数据处理和实时性。例如,`stdbuf -o0 cmd`禁用cmd的输出缓冲,`-oL`则按行缓冲。在需要实时监控或高效处理大量数据时,选择合适的缓冲模式至关重要。注意,过度使用无缓冲可能影响性能,并非所有系统都支持`stdbuf`。