Linux系统入门

Linux系统入门第一章

Linux系统的概括

Linux操作系统凭借着 极其的稳定性灵活性安全性和服务器管理 最小化管理终端字符占用少,网络服务配置便捷、软件开发、大数据等众多领域占据着重要位置,深入了解计算机世界 Linux已经成为运维 开发工程师Linux技能的的基本要素,接下来为大家们展示Linux命令的魅力。

Linux命令分类

1. Linux的命令执行必须由shell命令解释器来处理。shell是Linux运行的一种特殊程序
在于用户和内核之间,负责用户输入命令通过shell来解释传递给系统内核来执行: Shell在用户和内核之间充当的“ 翻译官 ” 角色
用户启动Linux时会自动加载shell程序以便用户输入命令传递给操作系统

2. bash是Linux操作系统默认使用的shell程序的文件 在于bin/bash
Linux操作系统有两种模式
内部命令
指的是集成于shell解释器(bash)的内部的一些特殊命令,也成为内建指令 内部命令属于shell的一部分,所以没对应的文件 只要shell在运行 内部命令都自动载入内存中了,用户可以直接使用
内部命令无需在硬盘中重新读取文件,因此效率是很高的

②外部命令
在Linux能够完成特定的功能的脚本和二进制程序,每个程序命令都对应的有文件 属于shell解释器以外的命令 所以运行Linux的时候还需要知道每个程序对应的文件位置,通过shell命令解释器加载执行
/font>

Linux命令行的格式

命令行是由 [命令字] [选项] [参数] 组成的

  • 命令字 是命令名称 也是最重要的部分,在Linux命令字来唯一确定一条命令
    输入的时候要注意要区分大小写

  • 选项 是用来调节命令具体的功能,来决定这条命令如何执行
    不同命令也有不同选项来执行 有的命令选项加短格式-来选择
    也有其他的 比如想要知道这个ls命令是什么 就输入命令
    ls --help

    可以看到ls的相关用途

  • 参数 是指对谁操作的对象(可以是文件 目录 用户 等)输入Linux命令时,根据命令字的具体格式来对应命令参数 确保命令正常运行

命令的分类

获取帮助命令

1.使用help命令
help是shell内建命令,用途是查询其他内部命令帮助信息 如图所示↓ 用help来查看pwd(当前所在的工作目录)帮助信息
在这里插入图片描述

  1. –help Linux的外部命令 可以选择命令 选项选择–help来查看帮助信息
    在这里插入图片描述
    3.man手册页
    man(manual page)是Linux最常用的在线帮助 大部分在外部安装程序时,配置文件会提供详细man手册页
    在这里插入图片描述
    可以将man手册页的信息重定向输出到文件里在这里插入图片描述

目录和文件的基本操作

Linux有好多对目录文件做操作的命令例如pwd cd ls du操作的功能不同

1.pwd 命令(查看当前所在的工作目录)

可以查看用户当前所在的工作目录位置可以是或者子目录父目录,没有选项参数。
例如:我现在在/root目录 若执行pwd可以查看当前目录所在位置

在这里插入图片描述

2.cd 命令 (切换工作目录)

cd 命令用于将用户的工作目录更改到其他位置,通常使用需要切换到的目标位置(文件夹路径)作为参数。若不指定目标位置,默认将切换到当前用户的宿主目录(家目录),宿主目录是 Linux 用户登录系统后默认的工作目录。例如,以下操作将把工作目录更改为/boot/grub,并执行 pwd 命令确认当前所处位置。
在这里插入图片描述
在Linux 操作系统中表示某个目录(或文件)位置时,参照目录点起点不同
可以使用两种形式,分别称 绝对路径 和 相对路径

①绝对路径:这种方式以根目录“/”作为起点,如“/boot/grub”表示根目录下 boot 子目录中的 grub目录。若要确切表明 grub 是一个日录(而不是一个文件),可以在最后也加上一个目录分隔符,如
表示为“/boot/grub/”。因为 Linux 操作系统中的根目录只有一个,所以不管当前处于哪个目录中,使用绝对路径都可以非常准确地表示一个目录(或文件)所在的位置。但是如果路径较长,输入的时候会比较烦琐。

②相对路径:想切换到目录里的子目录时 直接输入cd 子目录 就是相对路径

执行 cd 命令时,还可以使用一个特殊的目录参数“-”(减号)表示上一次执行 cd 命令之前所处的目录。例如,以下操作先通过执行“cd~”命令(与单独执行“cd”命令效果相同)切换到当前用户的宿主目录,然后执行“cd-”命令返回原来所在的目录位置。

[root@localhost grub]# pwd
/boot/grub
[root@localhost grub]# cd ~
[root@localhost ~]# pwd
/root
[root@localhost ~]# cd -
/boot/grub
3.ls命令 列表显示目录的内容

ls 命令主要用于显示目录中的内容,包括子目录和文件的相关属性信息等。使用的参数可以是目录名,也可以是文件名,允许在同一条命令中同时使用多个参数。

1s 命令可以使用的选项种类非常多,这里只列出几个最常用的选项以供参考。

-1:以长格式(Long)显示文件和目录的列表,包括权限、大小、最后更新时间等详细信息。不使用-1 选项时,1s 命令默认以短格式显示目录名或文件名信息。

-a:显示所有(A11)子目录和文件的信息,包括名称以点号“.”开头的隐藏目录和隐藏文件。-A:与-a 选项的作用基本类似,但有两个特殊隐藏目录不会显示,即表示当前目录的“.”和表示父目录的“.

-d:显示目录(Directory)本身的属性,而不是显示目录中的内容。

-h:以更人性化(Human)的方式显示目录或文件的大小,默认的大小单位为字节(B),使用-h选项后将显示为 KB、MB 等单位。

-R:以递归方式显示指定目录及其子目录中的所有内容。

ls查看当前目录所有文件目录 在这里插入图片描述

4.du 命令 统计目录以及空间占用情况

du 命令可用于统计指定目录(或文件)所占用磁盘空间的大小,使用目录或文件的名称作为参数。
du 命令常用选项

-a:统计磁盘空间占用时包括所有的文件
-h:以更人性化的方式
-s:只统计每个参数所占用空间总的(Summary)大小,而不是统计每个子目录、文件的大小。

查看单个目录占用

【root@localhost ~】# du -sh /var/log
12M /var/log/

如果需要分别统计多个文件所占用的空间大小,可以结合“-ah”选项,当使用目录作为参数时,最后将列出该目录总共占用的空间大小。在这里插入图片描述

创建目录和文件

1. mkdir 命令 创建新目录

在目录里面创建新子目录
在这里插入图片描述
如果创多个嵌套多层目录 可以在选项加个 -p 否则只能创建一层目录
在这里插入图片描述

2.touch 命令 创建空文件

在这里插入图片描述

touch 命令本来用于更新文件的时间标记,但在实际使用中经常用于创建新的测试文件。该命令使用文件名作为参数,可以同时创建多个文件。当目标文件已存在时,将更新该文件的时间标记,否则将创建指定名称的空文件。例如,以下操作将在/opt 目录中创建两个空文件,文件名分别为zh 和 zzh

[root@localhost optl# touch zzh zh
[root@localhost opt]# ls'123
 nihao qwe zh zzh
3.ln命令 创建链接文件

1n 命令用于为文件或目录建立链接文件(类似于 Windows 系统中的快捷方式),提高用户定位文件或定位目录的效率。链接文件包括软链接和硬链接两种类型,其中软链接又称为符号链接。无论是访问软链接还是硬链接,与直接访问原始文件的效果基本相同。
软链接与硬链接的区别主要在于,删除原始文件后,软链接将失效,但硬链接仍然可用;软链接适用于文件或目录,但硬链接只可用于文件,不能为目录建立硬链接;软链接与原始文件可以位于不同的文件系统中,但硬链接必须与原始文件在同一个文件系统(如一个 Linux 分区)内。

1n[-s]源文件或目录... 链接文件或目标位置

复制、删除、移动目录和文件

1.cp命令 复制文件或目录

cp复制文件或者目录 可以用于备份和转移

cp[选项].. 源文件或目录... 目标文件或目录

cp命令选项`

-f:覆盖目标同名文件或目录时不进行提醒,而直接强制(Force)复制。
-i:覆盖目标同名文件或目录时提醒用户确认
-p:复制时保持(Preserve)源文件的权限、属主及时间标记等属性不变复制目录时必须使用此选项,表示递归复制所有文件及子目录。
2.rm 删除文件和目录

rm 命令用于删除指定的文件或目录,在 Linux 命令行界面中,删除的文件是难以恢复的,因此使用rm 命令删除文件时需要小心
选项

-f:删除文件或目录时不进行提醒,而直接强制删除。
-i:删除文件或目录时提醒用户确认。
-r:删除目录时必须使用此选项,表示递归删除整个目录

删除刚复制到 public html 目录中的 grub 目录树,且不提示用户进行确认(直接删除),可以执行“rm -rf public html/grub/”命令

[root@localhost ~]# rm -rf public html/grub/
root@localhost ~]# ls public html/
host.conf
3. mv 命令 移动目录或文件

mv 命令用于将指定的文件或目录转移位置,如果目标位置与源位置相同,则效果相当于为文件或目录改名。

mv[选项]源文件或目录...目标文件或目录

查找目录和文件

1.which命令 查找用户执行的命令存放在的目录
which 命令用于査找 Linux 命令程序并显示所在的具体位置,其搜索范围主要由用户的环境变量PATH 决定(可以执行“echo SPATH”命令査看),这个范围也是 Linux 操作系统在执行命令或程序时的默认搜索路径。

查找ls命令的文件所在那个目录

[root@localhost ~]# which ls
alias ls='ls --color=auto' /usr/bin/ls
2.find命令 查找文件或目录

find 命令的基本使用格式如下

find[查找范围][查找条件表达式]


设置 find 命令的査找条件时,若需要使用“*”或“?”通配符,最好将文件名用双引号括起来,以避免当前目录下符合条件的文件干扰査找结果。例如,以下操作将在/etc 目录中递归査找名称以“reso1”开头、以“.conf”结尾的文件

[root@localhost ~]# find /etc -name"resol*.conf"
/etc/resolv.conf

Linux目录结构

在这里插入图片描述

Linux 操作系统在定位文件或目录位置时,使用斜杠“/”进行分隔(区别于 Windows 操作系统中的反斜杠“\”)。整个树形目录结构中,使用独立的一个“/”表示根目录,根目录是Linux 操作文件系统的起点,其所在的分区称为根分区。在根目录下,Linux操作系统将默认建立一些特殊的子目录,分别具有不同的用途。下面简单介绍一下其中常见的子目录及其作用。

/boot:此目录是系统内核存放的目录,同时也是系统启动时所需文件的存放目录,如vmlinuz和 initrd.img。在安装 Linux 操作系统时,为 boot 目录创建一个分区,有利于对系统进行备份。
/bin:bin 是 binary 的缩写。这一目录存放了所有用户都可执行的且经常使用的命令,如 cp、ls 等。
/dev:此目录保存了接口设备文件,如/dev/hda1、/dev/cdrom 等
/etc:系统主要的配置文件几乎都放置到这个目录内,例如人员的账号密码文件、各种服务的起始文件等。
/home:存放所有普通系统用户的默认工作文件夹(即宿主目录、家目录),如用户账号“teacher对应的宿主目录位于“/home/teacher/”。如果服务器需要提供给大量的普通用户使用,建议将“/home”目录也划分为独立的分区,以方便用户数据的备份。
/root:该目录是 Linux 操作系统管理员(超级用户)root 的宿主目录,默认情况下只有 root用户的宿主目录在根目录下而不是在“/home”目录下。
/sbin:存放 Linux 操作系统中最基本的管理命令,一般管理员用户才有权限执行。/usr:存放其他的用户应用程序,通常还被划分成很多子目录,用于存放不同类型的应用程序。/var:存放系统中经常需要变化的一些文件,如系统日志文件、用户邮箱目录等,在实际应用系统中,“/var”目录通常也被划分为独立的分区。
以上列举的只是 Linux 操作系统中用户经常用到的子目录,还有其他一些子目录需要用户在使用Linux 操作系统的过程中逐渐去熟悉。。

查看检索文件

查看文件内容

1.cat命令 显示并连接(Concatenate)文件的内容

cat 命令本来用于连接(Concatenate)多个文件的内容,但在实际使用中更多地用于査看文件内容。
通过cat查看网卡内容

在这里插入图片描述

2.more 和 less 命令–分页查看文件内容

使用 cat 命令可以非常简单地直接显示整个文件的内容,但是当文件中的内容较多时,很可能只能看到最后一部分信息,文件前面的大部分内容都来不及看到。而more 和 less 命令通过采用全屏的方式分页显示文件,便于我们从头到尾仔细地阅读文件内容。
more 命令是较早出现的分页显示命令,表示文件内容还有更多(more)的意思,less 命令是较晚出现的分页显示命令,提供了比早期 more 命令更多的一些扩展功能。两个命令的用法基本相同。
使用 more 命令査看超过一屏的文件内容时,将进行分屏显示,并在左下角显示当前内容在整个文件中的百分比。在阅读界面中,可以按 Enter 键向下逐行滚动査看,按 Space 键可以向下翻一屏,按 b 键向上翻一屏,按q键退出并返回原来的命令环境。

[root@localhost ~]# more /etc/httpd/conf/httpd.conf# This is the main Apache HTTp server configuration file. It contains the# configuration directives that give the server its instructions. # see <URL:http://httpd.apache.org/docs/2.4/>for detailed information.# In particular, see# <URL:http://httpd.apache.org/docs/2.4/mod/directives.html># for a discussion of each configuration directive.
--more--(1%)
33.head 和 tail 命令查看文件开头或末尾的部分内容

head 和 tai1 是一对作用相反的命令,前者用于显示文件开头的一部分内容,后者用于显示文件末尾的一部分内容。可以使用“-n”选项(n 为具体的行数)指定需要显示多少行的内容,若不指定行数,默认只显示十行。

  • 1-4 /etc/passwd”命令,可以査看用户账号文件/etc/passwd 开头第一行至第四行的内容。
    执行“head
[root@localhost ~]# head -4 
/etc/passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:
bin:/bin:/sbin/nologindaemon:x:2:2:
daemon:/sbin:/sbin/nologinadm:x:3:4:
adm:/var/adm:/sbin/nologin

tail 命令则正好相反,用于查看文件末尾的内容。

tail [行数]

统计和检索文件内容

1.wc 命令–统计文件内容中的单词数量

wc 命令用于统计文件内容中包含的行数、单词数、字节数等信息,使用文件名作为参数,可以同时统计多个文件。常用的选项

-1:统计文件内容中的行数。
-w:统计文件内容中的单词个数(以空格或制表位作为分隔)
-c:统计文件内容中的字节数
2. grep 命令–检索、过滤文件内容

grep 命令用于在文件中查找并显示包含指定字符串的行,可以直接指定关键字符串作为查找条件,也可以使用复杂的条件表达式(例如,“ word”表示以 word 开头,“word ”表示以 w o r d 结尾,“ ”表示以 word 结尾,“ 表示以word结尾,”表示空行)。使用 grep 命令的基本格式如下

-i:查找内容时忽略大小写(Ignore Case)
-v:反转查找(Invert),即输出与查找条件不相符的行。

grep查询ftp用户

[root@localhost ~]# grep "ftp" /etc/passwd
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

用 grep 命令可以过滤掉这些无关信息。例如,以下操作可以显示/etc/yum.conf 文件中以“#”开头的行和空行以外的内容。

[root@localhost ~]# grep -v"^#"/etc/yum.conf|grep -v "^$[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
//省略部分内容

备份与恢复文档

在 Linux 操作系统中,最简单的文件和目录备份工具就是 cp(复制)命令。但是当需要备份的文件、目录数量较多时,仅仅使用 cp 命令就显得“力不从心”,并且备份的文件数量及其所占用的磁盘空间都可能会对服务器产生不小的压力。因此,有必要对需要备份的数据进行归档和压缩。

Linux 操作系统中较常用的压缩命令工具包括 gzip、bzip2,最常用的归档命令工具为 tar。使用 tar命令可以通过特定选项自动调用 gzip 或 bzip2 程序,以完成归档、压缩的整套流程,当然也可以完成解压、释放已归档文件的整套流程。
下面分别介绍压缩和归档命令的使用方法。

使用压缩和解压缩工具

1.gzip 和gunzip 命令

使用 gzip 制作的压缩文件默认的扩展名为“.gz”。制作压缩文件时,使用“-9”选项可以提高压缩的比率,但文件较大时会需要更多的时间。
在这里插入图片描述
解压缩时需要添加gunzip -d
在这里插入图片描述

2.bzip2 和 bunzip2 命令

bzip2 和 bunzip2 命令的用法与 gzip、gunzip 命令基本相同,使用 bzip2 制作的压缩文件默认的扩展名为“,bz2”。

[root@localhost ~]# ls -lh /root/public_html/mkfile*
-rwxr-xr-x. 1 root root 62k May 4 01:32 /root/public html/mkfile[root@localhost ~]# bzip2 -9 /root/public html/mkfile
[root@localhost ~]# ls -lh /root/public html/mkfile*
-rwxr-xr-x.1 root root 30k May 4 01:32 mkfile.bz2

解压缩时需要添加bunzip2 -d

[root@localhost ~]# bunzip2 /root/public html/mkfile.bz2


使用 tar 归档和释放工具

tar 命令主要用于对目录和文件进行归档。在实际的备份工作中,通常在归档的同时也会将包文件进行压缩(需要调用前面的 gzip 或 bzip2 命令),以节省磁盘空间。使用 tar 命令时,选项前的“_”号可以省略。

  • 常用的几个选项
-c:创建(Create).tar 格式的包文件。
-C:解压时指定释放的目标文件夹。
-f:表示使用归档文件。
-j:调用 bzip2 程序进行压缩或解压。
-p:打包时保留文件及目录的权限
-P:打包时保留文件及目录的绝对路径。
-t:列表查看包内的文件。
输出详细信息(Verbose):V:
-x:解开.tar 格式的包文件。
-z:调用 gzip 程序进行压缩或解压。

创建归档压缩 zcvf 如果bz2可以使用 jcvf
在这里插入图片描述
解压压缩zxvf 如果是bz2使用jxvf 想要压缩到指定位置就加-C
在这里插入图片描述

vi文本编辑器

vim编辑器有 三种模式:命令、输入、末行模式

  • 命令模式 a、i、o等进如输入模式
  • 命令模式 : 进入末行模式
  • 末行模式和输入模式都用esc键返回命令模式
1.删除

dd删除一行,ndd就是删除n行
d^删除光标之前到行首所有字符
d$删除光标之后到行尾所有字符

2.复制

yy复制一行,nyy就是复制n行,后按p粘贴

3.查找

命令模式按 \ 后输入指定的字符串,从当前光标查找,按n查找下一个查找结果

4.保存及退出
:w 另存其他文件并指定名字
:q!不保存退出
:wq (x)保存退出
:ZZ 保存退出
:wq!强制保存
5.替换内容

分两种形式 sub 替换内容 替换目标 g
% :在整个文件内容查找替换
n,m: 在指定行数查找替换

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值