admin管理员组

文章数量:1122846

1.环境安装

ubuntu下载地址(可自行挑选版本下载):Ubuntu Releases

安装:

1.新建虚拟机

2.自定义

3.稍后安装操作系统

4.Linux

5.自行设置名称及位置

6.推荐4个处理器,每个处理器两个内核

7.推荐4G

8.NAT

9.LSI Logic(L)

10.SCSI

11.创建新虚拟磁盘

12.推荐40GB

13.默认就行

14.自定义硬件,使用下载好的映像文件

15.选择中文,并安装Ubuntu

16.可以测试一下自己的键盘

17.建议取消下载更新,并安装第三方软件

18.默认就行,现在安装

19.默认上海

20.自行设置计算机名,用户名和密码

20.现在重启

21.Vmtools介绍及功能

VMware Tools包含一系列服务和模块,可在VMware产品中实现多种功能,从而使用户能够更好地管理客户机操作系统,以及与客户机操作系统进行无缝交互。这些服务和模块以ISO映像文件的形式存在,每个类型的客户机操作系统(包括Windows、Linux、Solaris、FreeBSD和NetWare)都有一个对应的ISO映像文件。

功能:

1.优化图形显示和鼠标体验:

  • VMware Tools通过提供虚拟设备驱动(如VMXNET网卡驱动),使得鼠标指针和画面显示更加流畅。
  • 可在虚拟机与主机之间自由移动鼠标(无需再按Ctrl+Alt组合键)。
  • 更新虚拟机中的显卡驱动,使虚拟机中的XWindows可以运行在SVGA模式下,显著提升总体的图形性能。

2.内存管理:

  • VMware Tools包含内存驱动,当ESXi主机内存不足时,可以从虚拟机中回收空闲内存,避免因内存不足导致的问题。

3.文件共享和拖放功能:

  • 允许用户直接将文件从宿主机拖放到虚拟机中,提高了文件传输的便捷性。

4.屏幕全屏化:

  • 安装VMware Tools后,虚拟机屏幕可以实现全屏显示,提升视觉体验。

5.时间同步:

  • 实现虚拟机与宿主机之间的时间同步,确保时间一致性。

6.软关机和自动化:

  • 允许用户通过软关机命令安全地关闭虚拟机。
  • 支持自动化脚本的执行,如虚拟机电源状态改变时运行的脚本。

7.增强虚拟机性能:

  • VMware Tools可增强虚拟机的整体性能,包括虚拟显卡和硬盘性能等。

8.操作系统自定义:

  • 将客户机操作系统作为vCenter Server及其他VMware产品的组成部分进行自定义。

22.跳过就行

23.前进

22.否,前进

23.软件更新器,可以安装

24.新版Ubuntu,不升级,毕竟自行选择的版本安装

25.完成

26.点击VMware的虚拟机,选择重新安装VMware tools,如果是灰色就在虚拟机设置中改成使用物理驱动器

27.如果出现“无法连接虚拟设备 sata0:1,因为主机上没有相应的设备。您要在每次开启此虚拟机时都尝试连接此虚拟设备吗?”这样的提示时,您有两个选项:“是”和“否”。

选择“是”:

  • 选择“是”,虚拟机软件(如VMware或VirtualBox)将在每次启动虚拟机时尝试连接指定的虚拟设备(在本例中是sata0:1)。
  • 如果主机上后来添加了相应的物理设备或虚拟设备配置得到了正确更新,虚拟机可能会成功连接到该设备。
  • 然而,如果主机上始终没有该设备,每次启动虚拟机时都会显示相同的警告消息,并且虚拟机可能无法正确识别或使用预期的设备。

选择“否”:

  • 如果您选择“否”,虚拟机软件将不会在每次启动虚拟机时尝试连接该虚拟设备。
  • 这意味着虚拟机将忽略该设备,并且不会显示相关的警告消息。
  • 如果您确定不需要该设备,或者计划稍后手动配置它,选择“否”可能是一个更好的选择。

28.找到VMware Tools,可以看左边栏中的光盘

29.复制.tar.gz为后缀的文件到主目录中的下载文件夹中(任意空间满足解压条件的目录都行)

30.鼠标右键在终端打开

31.在终端中输入tar -zxvf VM(按TAB会自动补全)

32.再输入sudo ./vmware-tools-distrib/vmware-install.pl,全程输入y,不需要输入时按回车就行

33.设置软件源,在虚拟机中按windows,输入soft,点击软件和更新

34.点击下载自,其他,自行选择下载服务器

2.文件系统

部分参考:Linux 基础知识总结 | JavaGuide

绝对路径: 从根目录开始,指定一个位置、文件

相对路径:从当前进程工作目录位置开始,指定一个位置、文件。

shell:命令解析器。默认运行在终端当中的程序(进程)。 —— unix —— born

bash:born again shell。 Linux版的shell。命令解析器。

inode:

inode 是 Linux/Unix 文件系统的基础。那 inode 到是什么?有什么作用呢?

通过以下五点可以概括 inode 到底是什么:

  1. 硬盘的最小存储单位是扇区(Sector),块(block)由多个扇区组成。文件数据存储在块中。块的最常见的大小是 4kb,约为 8 个连续的扇区组成(每个扇区存储 512 字节)。一个文件可能会占用多个 block,但是一个块只能存放一个文件。虽然,我们将文件存储在了块(block)中,但是我们还需要一个空间来存储文件的 元信息 metadata:如某个文件被分成几块、每一块在的地址、文件拥有者,创建时间,权限,大小等。这种 存储文件元信息的区域就叫 inode,译为索引节点:i(index)+node。 每个文件都有一个唯一的 inode,存储文件的元信息。
  2. inode 是一种固定大小的数据结构,其大小在文件系统创建时就确定了,并且在文件的生命周期内保持不变。
  3. inode 的访问速度非常快,因为系统可以直接通过 inode 号码定位到文件的元数据信息,无需遍历整个文件系统。
  4. inode 的数量是有限的,每个文件系统只能包含固定数量的 inode。这意味着当文件系统中的 inode 用完时,无法再创建新的文件或目录,即使磁盘上还有可用空间。因此,在创建文件系统时,需要根据文件和目录的预期数量来合理分配 inode 的数量。
  5. 可以使用 stat 命令可以查看文件的 inode 信息,包括文件的 inode 号、文件类型、权限、所有者、文件大小、修改时间。

简单来说:inode 就是用来维护某个文件被分成几块、每一块在的地址、文件拥有者,创建时间,权限,大小等信息。

硬链接(Hard Link)

  • 在 Linux/类 Unix 文件系统中,每个文件和目录都有一个唯一的索引节点(inode)号,用来标识该文件或目录。硬链接通过 inode 节点号建立连接,硬链接和源文件的 inode 节点号相同,两者对文件系统来说是完全平等的(可以看作是互为硬链接,源头是同一份文件),删除其中任何一个对另外一个没有影响,可以通过给文件设置硬链接文件来防止重要文件被误删。
  • 只有删除了源文件和所有对应的硬链接文件,该文件才会被真正删除。
  • 硬链接具有一些限制,不能对目录以及不存在的文件创建硬链接,并且,硬链接也不能跨越文件系统。
  • ln 命令用于创建硬链接。

软链接(Symbolic Link 或 Symlink)

  • 软链接和源文件的 inode 节点号不同,而是指向一个文件路径。
  • 源文件删除后,软链接依然存在,但是指向的是一个无效的文件路径。
  • 软连接类似于 Windows 系统中的快捷方式。
  • 不同于硬链接,可以对目录或者不存在的文件创建软链接,并且,软链接可以跨越文件系统。
  • ln -s 命令用于创建软链接

Linux目录结构:

  • /:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录。所有的东西都是从这里开始。当你在终端里输入“/home”,你其实是在告诉电脑,先从/(根目录)开始,再进入到home目录。
  • /bin: /usr/bin: 可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。
  • /boot:放置linux系统启动时用到的一些文件,如Linux的内核文件:/boot/vmlinuz,系统引导管理器:/boot/grub。
  • /dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱 mount /dev/cdrom /mnt。
  • /etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有 /etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d。
  • /home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~edu 表示用户 edu 的家目录。
  • /lib: /usr/lib: /usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助。
  • /lost+fount:系统异常产生错误时,会将一些遗失的片段放置于此目录下。
  • /mnt: /media:光盘默认挂载点,通常光盘挂载于 /mnt/cdrom 下,也不一定,可以选择任意位置进行挂载。
  • /opt:给主机额外安装软件所摆放的目录。
  • /proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有 /proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等。
  • /root:系统管理员root的家目录(宿主目录)。
  • /sbin: /usr/sbin: /usr/local/sbin:放置系统管理员使用的可执行命令,如fdisk、shutdown、mount 等。与 /bin 不同的是,这几个目录是给系统管理员 root使用的命令,一般用户只能"查看"而不能设置和使用。
  • /tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下。
  • /srv:服务启动之后需要访问的数据目录,如 www 服务需要访问的网页数据存放在 /srv/www 内。
  • /usr:应用程序存放目录,/usr/bin 存放应用程序,/usr/share 存放共享数据,/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local: 存放软件升级包。/usr/share/doc: 系统说明文件存放目录。/usr/share/man: 程序说明文件存放目录。/usr/include:存放头文件。
  • /var:放置系统执行过程中经常变化的文件,如随时更改的日志文件 /var/log,/var/log/message:所有的登录文件存放目录,/var/spool/mail:邮件存放的目录,/var/run:程序或服务启动后,其PID存放在该目录下。

文件:在Linux操作系统中,所见皆文件。

用户:Linux 是一款多用户多任务的分时复用操作系统。

家目录:宿主目录。

每个用户不同。—— cd 回车 所到的目录。

3.常用命令

Linux 命令在线速查手册:Linux命令搜索引擎 命令,Linux Linux命令搜索引擎 命令详解:最专业的Linux命令大全,内容包含Linux命令手册、详解、学习,值得收藏的Linux命令速查手册。 - Linux 命令搜索引擎

3.1文件管理

1)查看文件信息:ls

ls -l 命令:

文件属性 :10 个字符,分为 2组。

第一组: 第一个字符。 代表文件类型: 7种 —— Linux下不以文件后缀名,作为区分文件类型的依据。

普通文件: -

目录文件:d

软链接文件:l —— 相当于 windows 快捷方式。

字符设备文件:c —— 伪文件(不占用磁盘存储)

块设备文件:b —— 伪文件

套接字文件:s —— 伪文件

管道文件:p —— 伪文件

unknown 文件。

第二组: 9 个字符。分3组。—— 文件所有者、文件所属组、其他人 : r、w、x

硬链接计数: 有多少个文件公用同一个 inode 编号

创建硬链接:ln 旧文件名 新硬链接文件。

特征:文件和硬链接文件之间,除文件名不一样以外,其他信息完全一致。并能实时同步。

文件所属用户: 谁创建默认属于谁

文件所属用户组: 谁创建默认属于该用户所在用户组。 用户——同名用户组

文件所占存储空间大小(字节):文件:实际大小。 目录文件:4k整数倍

文件创建、最后一次修改时间: 初创文件:实际创建时间。修改过的文件,修改时间。

文件名

ls 常用参数:

-a :常隐藏文件。 —— 以 “.”开头的文件或目录

-l:以列表方式显示文件的详细信息

-h:配合 -l 以人性化的方式显示文件大小

-d:查看目录本身属性。

--help:查看帮助信息。

TAB键:自动补齐。histroy:历史命令。man 帮助手册。

与DOS下的文件操作类似,在Unix/Linux系统中,也同样允许使用特殊字符来同时引用多个文件名,这些特殊字符被称为通配符

通配符

含义

*

文件代表文件名中所有字符

ls te*

查找以te开头的文件

ls *html

查找结尾为html的文件

代表文件名中任意一个字符

ls ?.c

只找第一个字符任意,后缀为.c的文件

ls a.?

只找只有3个字符,前2字符为a.,最后一个字符任意的文件

ls [a-f]*

找到从a到f范围内的的任意一个字符开头的文件

\

如果要使通配符作为普通字符使用,可以在其前面加上转义字符。“?”和“*”处于方括号内时不用使用转义字符就失去通配符的作用。

ls \*a

查找文件名为*a的文件

2) 输出重定向命令:>

Linux允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中。

> 重定向到指定文件,文件不存在自动创建。存在覆盖源文件。

>> 将内容追加到指定文件,文件不存在自动创建。存在不覆盖

如:ls > test.txt ( test.txt 如果不存在,则创建,存在则覆盖其内容 )

3) 分屏显示:more

查看内容时,在信息过长无法在一屏上显示时,会出现快速滚屏,使得用户无法看清文件的内容,此时可以使用more命令,每次只显示一页,按下空格键可以显示下一页,按下q键退出显示,按下h键可以获取帮助。

4) 管道:|

“|” 将 左边的命令执行结果,写给右边。再执行右边的命令。

ps -aux | grep xxx —— 筛选系统中,所有正在运行的 xxx 进程。

5) 清屏:clear

clear作用为清除终端上的显示

6) 切换工作目录: cd

cd /bin 绝对路径

cd .. 上一级目录

cd ./ 当前目录

cd ~ 回用户宿主目录(家目录)

cd 回车 回用户宿主目录(家目录)

cd - : 切换到上一次工作过的目录中。

7) 显示当前路径:pwd

使用pwd命令可以显示当前的工作目录,该命令很简单,直接输入pwd即可,后面不带参数。

终端提示符的语法规则:用户名@主机名:当前shell进程工作目录$/# —— $:普通用户、#:管理员。

8) 创建目录:mkdir

通过mkdir命令可以创建一个新的目录。参数-p可递归创建目录。

需要注意的是新建目录的名称不能与当前目录中已有的目录或文件同名,并且目录创建者必须对当前目录具有写权限。

9) 删除目录:rmdir

可使用rmdir命令删除一个目录。必须离开目录,并且目录必须为空目录,不然提示删除失败。

10) 删除文件和目录:rm -r

可通过rm删除文件或目录。使用rm命令要小心,因为文件删除后不能恢复。为了防止文件误删,可以在rm后使用-i参数以逐个确认要删除的文件。

常用参数及含义如下表所示:

参数

含义

-i

以进行交互式方式执行

-f

强制删除,忽略不存在的文件,无需提示

-r

递归地删除目录下的内容,删除文件夹时必须加此参数

11) 建立链接文件:ln
  • Linux链接文件类似于Windows下的快捷方式。
  • 链接文件分为软链接和硬链接。
  • 软链接:软链接不占用磁盘空间,源文件删除则软链接失效。
  • 硬链接:硬链接只能链接普通文件,不能链接目录。

硬链接: ln 源文件 连接文件

不能给目录创建硬连接。

软连接: ln -s 源文件 连接文件

等同于windows下的快捷方式。建议使用“绝对路径创建软链接”

可以给目录创建软连接。

12) 查看或者合并文件内容:cat

13) 拷贝文件:cp

cp命令的功能是将给出的文件或目录复制到另一个文件或目录中,相当于DOS下的copy命令。

常用选项说明:

选项

含义

-a

该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性。

-f

覆盖已经存在的目标文件而不提示

-i

交互式复制,在覆盖目标文件之前将给出提示要求用户确认

-r

若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。

-v

显示拷贝进度

clear

14) 移动文件:mv

用户可以使用mv命令来移动文件或目录,也可以给文件或目录重命名。

移动文件: mv 待移动文件名 目录位置。

改名文件: mv 待改名文件名 不存在的文件、目录名

15) 获取文件类型:file

Linux系统文件类型不是根据文件扩展名分类的,通过file命令可以确认文件具体类型。

16) 压缩命令:gzip、bzip2、tar、zip、rar

gzip:不能打包压缩!不能保留源文件。不能压缩目录

bzip2:不能打包压缩!不能压缩目录

tar:打包。

结论:

压缩: tar -zcvf xxx.tar.gz 打包压缩材料。 tar -jcvf xxx.tar.bz2 打包压缩材料。

z: gzip格式压缩 j: bzip2 格式压缩

c: 创建压缩文件

v: 输出压缩详细

f: 指定压缩后的文件名

.tar.gz : .tar.bz2: 不具有语法强制性,但是推荐使用!

解压缩:tar -zxvf xxx.tar.gz tar -jxvf xxx.tar.bz2 。

cle

zip:压缩:zip -r 压缩包名(没有.zip后缀) 打包压缩材料。

解压缩: unzip -d 解压缩位置目录 xxxzip(待解压缩文件)

rar:压缩:rar a -r 压缩包名.rar(后缀可加可不加) 打包压缩材料。

解压缩: rar x 待解压缩包名.rar

17) 查看命令位置:which

3.2用户权限管理

1) 查看当前登录用户:whoami

whoami该命令用户查看当前系统当前账号的用户名。可通过cat /etc/passwd查看系统用户信息。

由于系统管理员通常需要使用多种身份登录系统,例如通常使用普通用户登录系统,然后再以su命令切换到root身份对传统进行管理。这时候就可以使用whoami来查看当前用户的身份。

2) 退出登录账户: exit
  • 如果是图形界面,退出当前终端;
  • 如果是使用ssh远程登录,退出登陆账户;
  • 如果是切换后的登陆用户,退出则返回上一个登陆账号。
3) 切换用户:su

su 用户名: 切换到指定用户登录,不修改工作目录位置。

su - 用户名: 切换到指定用户登录,修改工作目录位置到 该用户的 宿主目录。

su - root:切换root用户登录,修改工作目录位置到 root 的 宿主目录。

su root:切换root用户登录,不改变工作目录位置 等价于( sudo su )

sudo关键字:临时获得一次root用户权限。执行完后续命令,该权限失效。

注意:如果是ubuntu平台,需要在命令前加“sudo”,如果在某些操作需要管理员才能操作,ubuntu无需切换到root用户即可操作,只需加“sudo”即可。sudo是ubuntu平台下允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,减少了root 用户的登陆和管理时间,提高了安全性。

4) 添加、删除用户:adduser、deluser

sudo adduser 新用户名

sudo deluser 用户名

5) 添加、删除用户组:addgroup、delgroup

sudo addgroup 新组名

sudo delgroup 组名

6) 设置用户密码:passwd

在Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户口令。用户也可以直接使用该命令来修改自己的口令,而无需在命令后面使用用户名。

7) 修改文件所有者:chown

chown 新用户名 待修改用户的文件名

8) 修改文件所属组:chgrp

chgrp 新组名 待修改组名的文件名

9) 修改文件权限:chmod

修改文件、目录访问权限。

r、w、x : 4/2/1

示例: chmod 751 file:

  • 文件所有者:读、写、执行权限
  • 同组用户:读、执行的权限
  • 其它用户:执行的权限

r、w、x 对于目录、文件的含义是否相同??

文件 目录

r: 查看文件内容 目录的内容(目录项)可以被查看

cat、more、less、tac ls、vim(读)

vim(读) gedit(读)

w: 修改、删除 文件内容 目录的内容(目录项)可以被修改、删除、增加

cat> / can >> mv、cp、rm、rmdir、mkdir、touch。。。

vim(写、删) /gedit(写、删除)

x: 该文件可以运行。 该目录可以被进入

cd

c

3.3系统管理

1) 查看进程信息:ps

进程是一个具有一定独立功能的程序,它是操作系统动态执行的基本单元。

ps命令可以查看进程的详细状况,常用选项(选项可以不加“-”)如下:

选项

含义

-a

显示终端上的所有进程,包括其他用户的进程

-u

显示进程的详细状态

-x

显示没有控制终端的进程

-w

显示加宽,以便显示更多的信息

-r

只显示正在运行的进程

ps aux | grep xxxx

top —— Linux下的 任务管理器。

2) 终止进程:kill

kill命令指定进程号的进程,需要配合 ps 使用。

kill -9 欲终止的进程ID (可以通过 ps aux | grep 获取) 9 —— SIGKILL

3) 后台程序:&、jobs、fg
  • 用户可以将一个前台执行的程序调入后台执行,方法为:命令 &
  • 如果程序已经在执行,ctrl+z可以将程序调入后台
  • jobs查看后台运行程序
  • fg编号(编号为通过jobs查看的编号),将后台运行程序调出到前台

多终端热键:Ctrl + Alt + T —— 唤醒一个新终端(独立)

Ctrl + shift + T —— 在一个终端里,创建多个shell标签。

4) 关机重启:reboot、shutdown、init

命令

含义

reboot

重新启动操作系统

shutdown –r now

重新启动操作系统,shutdown会给别的用户提示

shutdown -h now

立刻关机,其中now相当于时间为0的状态

shutdown -h 20:25

系统在今天的20:25 会关机

shutdown -h +10

系统再过十分钟后自动关机

init 0

关机

init 6

重启

5) 字符界面和图形界面切换

在redhat平台下,可通过命令进行切换:

init 3

切换到字符界面

init 5

切换到图形界面

通过快捷键切换(适用大部分平台):

Ctrl + Alt + F3

切换到字符界面

Ctrl + Alt + F1

切换到图形界面

6) 查看或配置网卡信息:ifconfig

如果,我们只是敲:ifconfig,它会显示所有网卡的信息:

显示字段

说明

eth0

网络接口名称

Link encap

链路封装协议

Hwaddr

网络接口的MAC地址

Inet addr

IP地址

Bcast

广播地址

Mask

子网掩码

UP

网络接口状态标识,UP已经启用,DOWN已经停用

BROADCAST

广播标识,标识网络接口是否支持广播

RUNNING

传输标识,标识网络接口是否已经开始传输分组数据

MULTICAST

多播标识,标识网络接口是否支持多播

MTU,Metric

MTU:最大传输单位,单位:字节。Metric:度量值,用于RIP建立网络路由用

RX bytes

接收数据字节统计

TX bytes

发送数据字节统计

临时设置IP地址:

sudo ifconfig ens33 新IP

系统重启失效。

sudo ifconfig ens33 up/down 使用命令 网卡启动、关闭

永久设置IP地址:

图形: 设置——网络——有线连接 + —— IPv4 —— 手动 —— 填入地址、子网掩码 、网关 —— “添加”

网址: 网段。IP里面倒数第二字段。

子网掩码: 255. 255.255. 0

网关:网段确定后,网关即为该网段的 第一个ip地址。192.168.xxx.1 —— 192.168.xxx.255 (广播地址)

命令:—— 通过修改配置文件,达到永久修改IP的目的。

修改 /etc/network/interfaces 文件。 添加 网址、子网掩码、网关。 指定DNS服务器

常用参数:

参数

功能

-a

显示所有网络接口状态

inet [IP地址]

设置IP地址

netmask [子网掩码]

设置子网掩码

up

启用网络接口

down

关闭网络接口

7) 测试远程主机连通性:ping
  • ping通过ICMP协议向远程主机发送ECHO_REQUEST请求,期望主机回复ECHO_REPLY消息
  • 通过ping命令可以检查是否与远程主机建立了TCP/IP连接

使用方法:ping [参数] 远程主机IP地址

参数

功能

-a

每次相应时都发出声音警示

-A

表示以实际往返相应时间为间隔,连续发送消息

-f

连续不断发送消息,不管是否收到相应

-n

只显示主机IP,不需要把IP解释成主机名

-c

发送指定次数数据报信息后停止,ping -c 5 192.168.10.254

-i

每次发送消息时间间隔,默认一秒,ping -i 2 192.168.10.254

-s

分组数据大小,默认64字节

-w

以秒为单位的超时值,一旦超时,就立即停止

3.4查找与检索

1) find

语法:find 搜索目录位置 参数 搜索条件

-name:按名称搜索

find /home/itcast/go_1 -name "*.soft" —— 在目录中找 .soft 结尾的文件

-type:按类型搜索

f(普通文件)、d、l、c、b、p、s

find /run/ -type "s" —— 在目录中找 socket 文件。

-size:按大小搜索

find ~/ -size +3M -size -8M M大写

find ~/ -size +3k -size -8k k小写

find ./ -size +3 -size -8 无单位,按扇区个数计算(一个扇区大小为 512B)

-maxdepth:按层级搜索:

指定搜索层级深度。 放置于其他参数之前。

find -maxdepth 1 -type 'f' -name "*.go" —— 只在当前目录下,搜索 .go 文件、目录。

-exec:对搜索结果,执行某些命令

对搜索结果执行命令

find -maxdepth 1 -type 'f' -name "*.go" -exec ls -l {} \;

xargs:需要结合管道,将搜索结果指定给某个命令使用。

对搜索结果执行命令

find -maxdepth 1 -type 'f' -name "*.go" | xargs ls -l

特例:如果文件名中含有空格, 如:文件名:‘abc xyz’

find -maxdepth 1 -type 'f' -print0 | xargs -0 ls -l

2) grep

grep -r/-R "love" 目标目录位置。

递归的在指定目录中,找寻包含某字符串的文件。

3) find和grep命令结合

find -maxdepth 1 -type 'f' -print0 | xargs -0 grep "love" -n

找寻当前目录下,包含 “love”的文件,并显示在 多少行出现 (-n 行号)

4.编辑器

4.1gedit编辑器

gedit是一个Linux环境下的文本编辑器,类似windows下的写字板程序,在不需要特别复杂的编程环境下,作为基本的文本编辑器比较合适。

4.2vi/vim编辑器

1)vi介绍

vi 编辑器是 Unix系统中最常见的基础文本编辑器。Linux下升级为vim编辑器,它不仅兼容 vi 的所有指令,而且还有一些新的特性,例如 vim 可以撤消无限次、支持关键词自动完成、可以用不同的颜色来高亮你的代码。vim 普遍被推崇为类 vi 编辑器中最好的一个。出于历史的原因使用时大家习惯性的统一简称vi。

vim 编辑器在Linux界有编辑器之神的美誉,几乎所有的 Linux 发行版中都包含 vi 程序。

可以联网使用命令快捷安装: sudo apt-get install vim

由于vi 工作时,不需要图形界面,非常适合远程及嵌入式工作,是效率很高的文本编辑器,尽管在 Linux 上也有很多图形界面的编辑器可用,但vi的功能是那些图形编辑器所无法比拟的。

三种工作模式:

命令模式: 默认进入vim的工作模式。该种模式下,用户所有输入均被当成命令。

编辑模式: 编写模式。写代码、文本内容。。。

末行模式: 在 命令模式下, 按“:”进入末行模式。该种模式下,用户所有输入均被当成末行命令。

2)vi基本操作

光标移动(命令模式);

h:左

j:下

k:上

L:右

转换编辑模式:

i:向光标所在位置的 “前面”插入数据!

a:向光标所在位置的 “后面”插入数据!

o:向光标所在位置的 “下一行”插入数据!

s:以删除光标位置一个字符为代价,修改工作模式 —— 文本编辑模式。

O:向光标所在位置的 “上一行”插入数据!

I:向光标所在位置的 “行首”插入数据!

A:向光标所在位置的 “行尾”插入数据!

S:以删除光标位置一整行为代价,修改工作模式 —— 文本编辑模式。

复制、粘贴:

yy:复制光标所在行。

Nyy:复制光标所在往后的N行(包含本行)。

p:粘贴至光标所在位置,下一行。

P(大写):粘贴至光标所在位置,上一行。

yw:将光标放置于单词的首字符上, 复制一个单词。

区域复制:将光标放置于待复制区域的首字符上, 按“v”(左下角出现 “可视”提示)使用 h,j,k,l 选择复制区域。

剪切、粘贴:

dd:剪切光标所在行。

Ndd:剪切光标所在往后的N行(包含本行)。

p:粘贴至光标所在位置,下一行。

P(大写):粘贴至光标所在位置,上一行。

dw:将光标放置于单词的首字符上, 剪切一个单词。

区域剪切:将光标放置于待剪切区域的首字符上, 按“v”(左下角出现 “可视”提示)使用 h,j,k,l 选择剪切区域。

d0:从光标所在位置,删除到 行首。

d$(D): 从光标所在位置,删除到 行尾。

删除:

同剪切。

字符操作:

x:删除光标选中字符

r:光标选中字符, 按“r”, 按目标字符。 可以将 原字符,替换为 目标字符。

跳转到指定行:

命令模式:

gg:第一行

G:最后一行

gg=G 自动排版。

NG:跳转到 第 N 行

vim hello.go + 56 —— 打开文件同时,跳转到 56 行

末行模式:

:N 回车。 —— 跳转到 第 N 行

查找:

1. 想象一个单词查找。 输入“/”(显示在末行的位置), 再输入要查找的单词。

2. 查找一个已经看到的单词。将光标放在该单词任意一个字符,“*”向后找, “#”向前找。 “n”代表下一个。

撤销:“u”

反撤销:ctrl - r

替换:—— 末行模式。

1. 单行替换: :s/旧单词/新单词。

一行有多个“旧单词”, 使用 “g”。否则只替换一行的首个。

2. 通篇替换: :%s/旧单词/新单词。

一行有多个“旧单词”, 使用 “g”。否则只替换一行的首个。

3. 指定区域替换: :n,ms/旧单词/新单词。

替换从n行开始,到m行结束,出现的“旧单词”, 一行有多个“旧单词”, 使用 “g”。否则只替换一行的首个。

3)vim配置

vim的配置:

用户配置: 用户宿主目录下,创建 .vimrc (隐藏文件),写入 配置项。

系统配置:sudo vi /etc/vim/vimrc (非隐藏文件)。写入 配置项。

5.远程操作

5.1SSH介绍

SSH为Secure Shell的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。

SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。常用于远程登录,以及用户之间进行资料拷贝。

利用SSH协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是 UNIX 系统上的一个程序,后来又迅速扩展到其他操作平台。SSH 在正确使用时可弥补网络中的漏洞。SSH 客户端适用于多种平台。几乎所有 UNIX 平台—包括 HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。

使用SSH服务,需要安装相应的服务器和客户端。客户端和服务器的关系:如果,A机器想被B机器远程控制,那么,A机器需要安装SSH服务器,B机器需要安装SSH客户端。

5.2远程登录

测试某软件是否安装:

sudo apt install aptitude

sudo aptitude show 软件名 —— “未安装”:根据提示安装。

—— “已安装”。

sudo aptitude install 软件名

Linux 远程 登录 Linux:

  • ssh -l 目标主机用户名 目标主机 iP地址。 ( 或 ssh itcast@127.0.0.1 )
  • —— 输入目标主机 密码。
  • 登录到,目标主机的 “家目录”

5.3远程传输文件

Linux 远程 发送文件给 Linux:

  • scp -r 目标用户名@目标主机名:目标存储的绝对路径 (例子: scp -r ./test123.mp3 zhangsan@192.168.35.221:/home/zhangsan/test )
  • —— 输入目标主机 密码。
  • 文件 直接存在在目标主机的指定目录下。 ( test123.mp3 存储在 zhangsan用户的/home/zhangsan/test目录下。)

5.4windows借助工具连接linux

参考文章使用xshell,xftp:

【Linux】—Xshell、Xftp安装-CSDN博客

本文标签: 操作系统安装傻瓜式Linux