Ubuntu基础使用

一、linux操作系统

        Linux是一种开源的操作系统内核,最初由林纳斯·托瓦兹(Linus Torvalds)于1991年发布。它被广泛用于各种设备,从服务器和台式计算机到嵌入式系统和手机。

Linux操作系统的关键点:

  1. 开源和自由:Linux的源代码是公开的,任何人都可以查看、修改和分发。许多Linux发行版是免费提供的,这使得它成为一个受欢迎的选择,特别是对于那些希望控制自己软件的用户和组织。

  2. 发行版:Linux有许多不同的发行版(或称为“distros”),每种发行版都有不同的功能和用途。常见的发行版包括Ubuntu、Fedora、Debian、CentOS和Arch Linux。每个发行版都有自己的软件包管理系统和配置方式。

  3. 内核:Linux内核是操作系统的核心,负责管理硬件和提供系统服务。内核处理进程管理、内存管理、硬盘操作、设备驱动等基本功能。

  4. 文件系统:Linux支持多种文件系统,如ext4、XFS和Btrfs。它也支持挂载其他操作系统的文件系统,例如NTFS(用于Windows)和HFS+(用于macOS)。

  5. 命令行界面:Linux用户通常使用命令行界面(CLI)进行操作,尽管也有图形用户界面(GUI)可供选择。CLI提供强大的功能和灵活性,许多系统管理任务可以通过终端完成。

  6. 安全性:Linux以其安全性著称。它采用了多种安全机制,包括用户权限管理和文件系统权限控制。此外,Linux的开源特性使得安全漏洞可以被迅速发现和修复。

  7. 社区支持:Linux有一个活跃的社区支持网络。用户可以通过邮件列表、论坛和在线资源获得帮助和建议。

  8. 应用程序:Linux支持大量的应用程序,包括网络服务器(如Apache和Nginx)、数据库(如MySQL和PostgreSQL)、开发工具、办公软件等。

二、 linux主要学什么

  1. 基础命令:掌握基本的命令行操作,如文件管理(ls, cp, mv, rm)、目录操作(cd, mkdir, rmdir)、文本处理(cat, grep, awk, sed)等。

  2. 系统管理:学习用户和权限管理(adduser, chmod, chown)、包管理(如apt, yum)、进程管理(ps, top, kill)、日志文件(如/var/log)等。

  3. 网络配置:了解网络设置和诊断工具,如ifconfig, ip, netstat, ping, ssh等。

  4. 文件系统:理解文件系统结构、挂载和卸载文件系统、磁盘管理(fdisk, df, du)等。

  5. 脚本编写:学习Shell脚本编程(如Bash),用于自动化任务和系统管理。

  6. 服务管理:了解服务的启动、停止和管理(systemctl, service),以及常见的服务如Web服务器和数据库。

  7. 安全:掌握基本的安全配置,如防火墙(iptables, ufw)、安全更新、用户权限和审计。

三、 格式

指令名+选项+参数,ls -alh /

四、帮助(指令 --help)

        --help选项是一个通用选项,用于显示命令的帮助信息。几乎所有的命令和工具都支持这个选项,提供了该命令的使用说明、可用选项和参数的详细信息。

运行--help时输出通常包括以下内容:

  1. 命令名称和简要描述:命令的基本功能说明。
  2. 用法:如何正确使用该命令的语法。
  3. 选项:所有可用的选项和它们的含义。
  4. 参数:命令可以接受的参数及其说明。

五、 ls指令

        ls是 Linux 和类 Unix 系统中用来列出目录内容的命令。它显示指定目录中的文件和子目录,并支持多种选项来改变显示的格式和信息。ls命令是一个非常灵活的工具,能以不同的方式显示文件和目录的信息。

 ls : -a,显示所有的文件信息(包含隐藏文件); -l,以列表形式展示详细信息;-h,文件大小 可读性更强;可以将多个选项组合在一起使用。例如,要以长格式显示当前目录中的所有文件和目录,并且以人类可读的格式显示文件大小,你可以使用:ls -alh。

六、 pwd指令(显示当前工作目录的完整路径

        pwd是一个在 Unix 和类 Unix 系统(如 Linux 和 macOS)中使用的命令,它用于显示当前工作目录的绝对路径。pwd代表“Print Working Directory”的缩写,pwd 是一个简单但非常有用的命令,帮助用户了解他们在文件系统中的确切位置。

      1.确认当前工作目录: 在进行文件操作(如复制、移动或删除文件)之前,你可以使用 pwd 来确保你在正确的目录中。

      2.脚本编写: 在脚本中,pwd 可以用来获取当前工作目录的路径,以便后续的操作可以基于这个路径进行。

      3.调试问题: 如果你遇到路径相关的问题或错误,pwd 能帮助你确认当前目录,进而帮助你解决路径问题。

七、cd指令(更改当前工作目录的命令)

        cd: cd ~,回到家目录;cd -,回到上次所在路径;cd ..回到父级路径,cd ../../../..。

      1.导航到特定目录: 使用 cd 来切换到你需要进行文件操作的目录。

      2.脚本编写: 在脚本中,cd 可以用来定位到特定的工作目录,以确保脚本在正确的位置执行。

      3.调试: 如果你的脚本或命令依赖于特定目录,使用 cd 可以帮助你检查和调整目录路径。

八、mkdir指令(创建文件夹)

 常见选项:

  1.-p:创建多级目录结构。如果中间的目录不存在,mkdir -p 会自动创建它们。

  2.-m:设置新目录的权限。

  3.-v:显示详细的创建信息。例如,mkdir -v new_folder 会在创建目录时显示信息。 

使用场景:

      1.组织文件:在进行文件管理时,使用 mkdir 创建必要的目录结构来保持文件的组织性。

      2.自动化脚本:在自动化脚本中,使用 mkdir 可以确保所需的目录结构已经存在。

      3.数据存储:创建数据存储目录,以便对数据进行分类和管理。

九、 rmdir指令(删除文件夹)

注意事项:

      1.目录必须为空rmdir 只会删除空目录。如果目录中有文件或其他目录,你需要先删除目录中的内容,或使用 rm -r 命令来递归删除非空目录。

      2.权限问题: 确保你有删除目录的权限。如果没有足够的权限,rmdir 将无法删除目录,并会显示错误信息。

使用场景:

      1.清理: 当不再需要某个空目录时,使用 rmdir 可以清理系统中的无用目录。

      2.脚本自动化: 在脚本中,可以使用 rmdir 清理生成的临时目录,以保持系统的整洁。

十、 touch指令(创建文件)

      1.创建新文件:当需要创建一个新的空文件时,可以使用 touch

      2.更新时间戳:用于更新文件的时间戳,以便跟踪文件的最新状态。

      3.脚本和自动化:在脚本中,touch 可用于创建必要的文件或确保文件的时间戳符合要求。

十一、rm指令 (删除文件和目录【rm -rf /】)

        选项: -r, 递归; -f,忽略错误。

使用场景:

      1.删除单个文件:用于删除不再需要的文件。

      2.删除多个文件:当需要清理多个文件时使用。

      3.递归删除目录:在删除整个目录及其内容时使用 -r 选项。

      4.保护删除:使用 -i 选项进行确认,防止意外删除重要文件。

注意事项:

      1.数据无法恢复: rm 命令删除的文件不会移到回收站,而是直接从文件系统中删除。删除后,文件通常无法恢复,所以在使用 rm 时需要特别小心。

      2.使用 -r 选项时要小心:递归删除目录时,确保你真的想删除目录及其所有内容,避免误删重要文件。

十二、 重定向(>,写入;>>,追加)

        在计算机操作中,重定向(Redirection)是指将命令的输入或输出从默认的位置(通常是标准输入或标准输出)转移到另一个位置。重定向通常用于处理命令行中的数据流,使得命令可以从文件读取数据或将结果输出到文件或其他地方。

      1.标准输入(stdin):命令接收输入的地方,通常是键盘。

      2.标准输出(stdout):命令输出结果的地方,通常是终端屏幕。

      3.标准错误(stderr):命令输出错误信息的地方,也通常是终端屏幕。

使用场景:

      1.日志记录:将程序输出和错误信息记录到日志文件中。

      2.数据处理:将数据流从一个命令传递给另一个命令进行处理。

      3.批处理:将输入文件传递给批处理命令,并将结果写入输出文件。

 十三、cat指令(连接多个文件 将内容输出到屏幕)

         cat命令用于显示文件内容、将多个文件连接起来以及创建新文件等操作。

显示文件内容,文件的内容输出到终端屏幕上;

连接多个文件并输出,将文件的内容按顺序输出到终端;

cat file1.txt  file2.txt > combined.txt将多个文件合并到一个新文件,将两个文件的内容合并并写入文件。如果新文件已经存在,它的内容会被覆盖;

cat > newfile.txt 创建新文件,这个命令会让你在终端中输入内容,按下 Ctrl+D 结束输入后,输入的内容会被保存到 newfile.txt 文件中。

 cat >> existing.txt 追加内容到现有文件,这个命令会让你在终端中输入内容,按下 Ctrl+D 结束输入后,输入的内容会被追加到 existingfile.txt 文件的末尾。

十四、 head指令(head -n 文件,查看文件前n行)

         主要用于快速查看文件的前几行,而无需打开整个文件。这个命令对处理大型文件尤其有用,因为你可以快速查看文件的开头,而不必等待整个文件加载完成。

十五、tail指令(tail -n 文件,查看文件后n行)       

        与 head 命令类似,tail 主要用于快速查看文件的结尾部分,特别是在处理大型日志文件或其他不断增长的文件时非常有用。-n:指定显示的行数。可以用 -n N-n +M 形式,其中 N 是要显示的行数,+M 是从第 M 行开始显示。-c:指定显示的字节数。-f:实时跟踪文件的新增内容。用于动态查看文件变化,适合用于监控日志文件等。-q:静默模式,抑制文件名的输出。通常与 -f 结合使用。-v:显示文件名,即使只有一个文件时也显示文件名。

查看文件的最后10行(默认行为):显示 filename.txt 文件的最后10行。

实时跟踪多个文件:使用 -f 选项可以同时跟踪多个文件的新增内容。

 从文件的第N行开始显示到文件结尾:使用 -n +M 形式可以从文件的第M行开始显示所有后续行。上面的命令会从第20行开始显示 filename.txt 文件的内容,直到文件结尾。

 查看指定数量的行:使用 -n 选项可以指定显示的行数。

查看文件的最后N字节: 使用 -c 选项可使用 -f 选项可以实时跟踪文件的新增内容。这在查看日

实时跟踪文件的新增内容:文件或其他不断增长的文件时特别有用。命令会持续输出文件的新内容,直到用户中断(通常按 Ctrl+C)。以指定显示的字节数。

十六、 more指令(显示文件内容,每次显示一屏幕;空格,继续显示;q,退出)

使用箭头键或空格键进行翻页:按空格键(Space)翻到下一页;按 Enter 键逐行查看;按 b 键返回上一页;按 q 键退出 more

-d:显示帮助提示而不是警告信息,适用于新手用户。 

-c:清屏显示文件内容,避免文件内容与终端显示混合。 

 -p:清屏后显示内容,类似于 -c,但不完全清屏。

十七、wc指令(文件统计【统计文件中的字数、行数和字符数等信息】)

        wc:-l,统计行数;-w,统计单词数;-m,统计字符数(在某些系统中,-c 和 -m 的含义可能相同);-c,统计字节数。

 十八、cp指令(复制+粘贴        cp 源文件  目标路径;cp 源文件  目标路径/新文件名字 )

 -r--recursive:递归地复制目录及其内容。

-i--interactive:在覆盖文件时提示确认。

-u--update:只在源文件比目标文件新时复制。

-v--verbose:显示详细的复制过程。

十九、mv指令(剪切+粘贴        mv 源文件  目标路径;mv 源文件  目标路径/新文件名字 )

 -i--interactive:在覆盖文件时提示确认。

-f--force:强制移动文件,不提示确认。如果目标文件已存在,则直接覆盖。

-u--update:只在源文件比目标文件新时移动。

-v--verbose:显示详细的移动过程。

二十、tar指令(归档   tar包)

创建归档文件-c:创建一个新的归档文件;-v:显示归档过程中的详细信息(可选);-f:指定归档文件的名称。

解包归档文件-x:解包归档文件;-v:显示解包过程中的详细信息(可选);-f:指定要解包的归档文件名称。

列出归档文件内容-t:列出归档文件中的内容。

创建压缩归档文件-z:通过 gzip 压缩归档文件,生成 .tar.gz 或 .tgz 文件。

解包压缩归档文件:tar -xzvf archive.tar.gz

创建 bzip2 压缩归档文件-j:通过 bzip2 压缩归档文件,生成 .tar.bz2 文件。

 解包 bzip2 压缩归档文件:tar -xjvf archive.tar.bz2

创建 xz 压缩归档文件: -J:通过 xz 压缩归档文件,生成 .tar.xz 文件。

 解包 xz 压缩归档文件:tar -xJvf archive.tar.xz

  • 在使用 tar 命令时,确保指定正确的选项以满足需要。
  • 可以组合多个选项,比如 tar -czvf 来同时创建和压缩归档文件。

二十一、 压缩解压(*.tar.gz;gzip:-r,压缩;-d,解压)

gzip 用于压缩单个文件。

压缩文件:gzip file        file 将被压缩为 file.gz

解压文件:gunzip file.gz        file.gz 将被解压回 file

 zipunzip 是用于创建和解压 .zip 文件的工具,.zip 是一种流行的压缩格式。

压缩文件: zip archive.zip file1 file2        archive.zip 是新创建的压缩文件。

 解压文件:unzip archive.zip        archive.zip 将被解压到当前目录。

二十二、 管道(| 左边输入 右边输出)

  • 管道 (|):管道符号 (|) 用于将一个命令的标准输出(stdout)直接传递给下一个命令的标准输入(stdin)。

注意事项:

  • 管道符的作用:管道符只将前一个命令的标准输出传递给下一个命令。如果前一个命令产生了错误(例如,命令失败),后续的命令可能不会执行。
  • 处理大量数据:对于处理大量数据或复杂的命令组合,使用管道可以使操作更加高效和灵活。
  • 性能考虑:有时候,管道链可能会影响性能,因为每个命令都需要处理数据并传递给下一个命令。

二十三、grep指令(以行为单位过滤) 

主要功能

  • 模式匹配grep 用于查找包含特定模式的行。模式可以是简单的字符串,也可以是正则表达式。
  • 文件搜索:可以在一个或多个文件中进行搜索,如果不指定文件,grep 会从标准输入读取数据。

常用选项

  • -i:忽略大小写。例如,grep -i "pattern" file.txt 会匹配 "PATTERN" 和 "pattern"。
  • -v:反转匹配,显示不包含模式的行。例如,grep -v "pattern" file.txt 会显示不包含 "pattern" 的行。
  • -r 或 -R:递归搜索目录中的文件。例如,grep -r "pattern" /path/to/dir 会在指定目录及其子目录中搜索。
  • -n:显示匹配行的行号。例如,grep -n "pattern" file.txt 会在结果中显示匹配行的行号。
  • -l:仅列出包含模式的文件名。例如,grep -l "pattern" *.txt 会列出所有包含 "pattern" 的 .txt 文件。
  • -c:只显示匹配的行数。例如,grep -c "pattern" file.txt 会显示文件中匹配 "pattern" 的行数。

二十四、ps指令(ps:-e,所有进程; -f,进程详细信息;ps -ef | grep  fig) 

常用选项

  • -e 或 -A:显示所有进程。例如,ps -e 列出系统中的所有进程。
  • -f:以完整格式显示信息,包括进程的父进程 ID 和命令行。例如,ps -f 提供详细的进程信息。
  • -u [user]:显示指定用户的进程。例如,ps -u username 显示某个用户的所有进程。
  • -p [pid]:显示指定进程 ID 的信息。例如,ps -p 1234 显示进程 ID 为 1234 的进程信息。
  • -aux:显示所有用户的所有进程,并提供详细的信息。通常用作组合选项,如 ps aux

二十五、kill指令(kill:杀死进程;-9 清理信息;ps -ef | grep bash,kill -9 进程号) 

常用选项和信号

  • -l:列出所有可用的信号及其名称。例如,kill -l 显示所有信号。
  • -s [signal]:指定要发送的信号。例如,kill -s SIGTERM 1234 发送 SIGTERM 信号给进程 ID 为 1234 的进程。
  • -9:强制终止进程,相当于发送 SIGKILL 信号。例如,kill -9 1234 强制终止进程 ID 为 1234 的进程。
  • -15:发送 SIGTERM 信号,要求进程终止,进程可以进行清理操作。例如,kill -15 1234 发送 SIGTERM 信号给进程 ID 为 1234 的进程。这个信号是默认信号,kill 1234 和 kill -15 1234 功能相同。
  • -HUP:发送 SIGHUP 信号,通常用于通知进程重新加载配置文件。例如,kill -HUP 1234 发送 SIGHUP 信号给进程 ID 为 1234 的进程。

 二十六、top指令(查看占用cpu内存最多的进程)

主要功能和选项

  1. 实时显示系统状态

    • 运行 top 命令后,会显示系统的当前状态,包括各个进程的 CPU 和内存使用情况。
    • 界面中显示的内容包括:系统时间、系统运行时间、CPU 使用率、内存使用情况、交换空间使用情况、进程总数等。
  2. 界面说明

    • 系统信息行:包括当前时间、系统运行时间、系统负载、当前用户数量等。
    • CPU 行:显示 CPU 的使用情况,包括用户空间、系统空间、空闲等。
    • 内存行:显示物理内存和交换空间的使用情况。
    • 进程列表:列出当前所有进程及其使用的资源,包括进程 ID、用户、CPU 和内存使用率、进程状态等。
  3. 常用交互命令(在 top 界面中输入):

    • h:显示帮助信息。
    • q:退出 top 界面。
    • k:杀死进程。需要输入进程 ID 和要发送的信号。
    • r:重新排序进程列表。可以通过指定字段进行排序。
    • P:按 CPU 使用率排序(默认设置)。
    • M:按内存使用率排序。
    • N:按进程 ID 排序。
    • s:设置更新间隔时间(单位为秒)。
  4. 常用选项

    • -d [delay]:设置屏幕更新的延迟时间。例如,top -d 5 每 5 秒更新一次。
    • -n [number]:设置显示的更新次数。例如,top -n 10 显示 10 次更新后退出。
    • -b:以批处理模式运行 top,适合将输出重定向到文件中。这个模式不会显示交互界面,只输出数据。

二十七、 which指令(which:where,查看执行文件路径)

         which是一个用于查找命令的可执行文件路径的命令。它会显示在系统的 PATH 环境变量中匹配到的命令的完整路径。

查找命令路径: 输出可能是 /usr/bin/python,显示 python 命令的完整路径。

 查找多个命令路径:输出会显示 lsgcc 的路径。

二十八、 链接

软链接: ln -s 源文件 链接文件;可以链接文件和文件夹;相当于创建了快捷方式;源文件删除,链接文件废弃。

硬链接:ln源文件 链接文件;不允许链接目录;改一个,其他链接同步更改;源文件删除,硬链接文件正常运行;相当于创建了一个新的文件,该文件和源文件保持同步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值