大二暑期第五周

鉴于大数据学习需要linux基础,但之前一直没注意这方面,linux直接上网先查,导致效率低下,所以本周学习linux操作

Linux文件系统概念

操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统;

文件系统的结构通常叫做目录树结构,从斜杠/根目录开始;

Linux号称“万物皆文件”,意味着针对Linux的操作,大多数时间是在针对Linux文件系统操作

文件系统通用特性

几乎主流的文件系统都是从/根目录开始的,Linux也不例外,而windows文件系统会以盘符来区分不同文件系统;

目录树中节点分为两个种类:目录(directory)、文件(file);

从根目录开始,路径具有唯一性;

只有在目录下才可以继续创建下一级目录,换句话说目录树到文件终止蔓延。

易混概念

当前路径:也叫当前工作目录,当下用户所属的位置;

相对路径:相对当前工作目录开始的路径,会随当前路径变化而变化;

绝对路径:不管工作目录在哪,绝对路径都是从/根目录开始,唯一不重复。

特殊符号

. 目录或者文件名字以.开始表示是隐藏的文件,如果路径以.开始表示当前路径

.. 当前目录的上一级目录

~ 当前用户的home目录,比如root用户home目录是/root

/ 根目录

ls(list files)命令:用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)。

-a 显示所有文件及目录 (.开头的隐藏文件也会列出)

-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出 注意ls -l = l

cd(change directory)命令:用于切换当前工作目录。切换的路径可为绝对路径或相对路径。若路径省略,则

变换至使用者的home目录 。

~ 也表示为home目录的意思

. 则是表示目前所在的目录

..则表示目前目录位置的上一层目录

mkdir(make directory)命令:用于创建目录。

-p 确保父目录名称存在,不存在的就建一个。

touch 命令:创建一个空文件,无任何内容。

rm(remove)命令:用于删除一个文件或者目录。

-f 强制直接删除,无需用户确认。

-r 将目录及以下所有递归逐一删除

cp(copy file)命令:用于复制文件或目录。

-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。

mv(move file)命令:用来为文件或目录改名、或将文件或目录移入其它位置

cat(concatenate)命令:用于连接文件并打印到标准输出设备如console控制台上。适合小文件内容查看。

more 命令:类似cat,不过会以一页一页的形式显示,更方便使用者逐页阅读,翻页结束自动退出。适合大文件

查看。按space键翻下一页,按b往回(back)上一页

tail 命令:用于查看文件的结尾部分的内容。

-n 用于显示行数,默认为10,即显示 10 行的内容。

-f 用于实时显示文件动态追加的内容。会把文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要

文件有更新,就可以看到最新的文件内容。

管道命令:将前一个命令执行的结果作为内容交给下一个命令处理。可以形成多级管道操作。

命令1|命令2 可以将命令1的结果通过命令2作进一步的处理

echo 命令:用于内容的输出,将内容输出到console控制台上。

echo string

> 输出重定向(覆盖)命令

command > file 执行command然后将输出的内容存入file,file内已经存在的内容将被新内容覆盖替代。

>> 输出重定向(追加)命令

command >> file 执行command然后将输出的内容存入file,新内容追加在文件末尾。

(1/2)打包、解包

tar(tape archive )命令:常用于备份文件。是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内

的文件。

-c 或--create 建立新的备份文件。

-x 或--extract或--get 从备份文件中还原文件。

-v 或--verbose 显示指令执行过程。

-f <备份文件>或--file=<备份文件> 指定备份文件

(2/2)打包压缩、解包解压缩

在打包备份或者解包的过程中,可以通过指定压缩算法,对打包的文件进行压缩,解压的时候也需要指定相应的算法。

-z 或--gzip或--ungzip 通过gzip指令处理备份文件。

最重要的搭配: tar -zxvf xxxxx.tar.gz

date命令:用来显示或设定系统的日期与时间,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号

后接数个标记。

cal(calendar)命令:用于用于显示当前或者指定日期的公历

free命令:用于显示内存状态。会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以

及系统核心使用的缓冲区等。

df(英文全拼:disk free)命令:用于显示目前在 Linux 系统上的文件系统磁盘使用情况统计。

ps (英文全拼:process status)命令:用于显示当前进程的状态,类似于 windows 的任务管理器。

jps命令:这是JDK自带的命令,专门用于查看本机运行的java进程情况。

vi是一款很多unix及其延伸系统内置的文本编辑器,具有强大的文本编辑能力。

vim是从vi发展出来的一个文本编辑器,可以理解为vi编辑器的增强版。vim中代码补完、编译及错误跳转等方便编

程的功能特别丰富。

vi/vim编辑器的核心设计思想:让程序员的手指始终保持在键盘的核心区域, 就能完成所有的编辑操作。

学习使用vi/vim编辑器最大挑战:万物皆命令

vim /path/file

如果打开的文件不存在,此时就是新建文件,编辑器左下角会提示new file

如果文件已经存在,此时就打开这个文件,进入命令模式

在使用vim编辑器的过程中,如果发现打开的文件内容不符合预期,可以检查一下,文件路径是否正确?

命令模式(Command mode)

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

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

输入模式(Insert mode)

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

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

底线命令模式(Last line mode)

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

i 进入到编辑输入模式后,定位到当前光标前面

o 进入到编辑输入模式后,在当前行的后面添加一行空行(当前行的下一行)

输入模式下按ESC退回到命令模式

在命令模式下,输入:进入底线命令模式。

常用的底线命令有:

:q 退出

:w 保存

:wq 保存退出

:wq! 强制保存退出

提示:在命令模式下按下shift + zz,可以实现快速的保存退出。

方向键控制移动

翻页 pageup pagedown

行首(home 0) 行尾(end $)

跳到文件的最后一行 G

跳到文件的第一行 gg

复制

yy 复制光标当前所在行内容

nyy 复制当前行往下n行

粘贴

p 当前行的下一行粘贴

P 当前行的上一行粘贴

注意:使用鼠标从window或者其他地方复制内容到vim编辑器粘贴,一定一定要在输入模式下进行,否则数据会有丢

失的风险。

删除命令

dd 删除光标所在当前行内容

ndd 删除当前行往下n行

撤销、反撤销

u 撤销上一步的操作(后悔药)

ctrl+r 反撤销

posted @ 2023-08-12 07:12  摆烂达人  阅读(6)  评论(0编辑  收藏  举报