Linux基础

Linux系统的文件
1、文件与文件夹(目录)
什么是文件?

一般都是一个独立的东西,可以通过一些特定的工具进行打开,并且其中不能在包含除了文字以外的东西。例如:

什么是文件夹?

可以在其中包含其他文件的东西。

为什么先讲文件?

1:日常运维工作中,有近一半以上的工作内容 精力 其实都是对文件的操作。

2: Linux 本身也是一个基于文件形式表示的操作系统。

Linux一切皆文件。

①在windows是文件的,在Linux下同样也是文件;

②在windows不是文件的,在Linux下也是以文件的形式存储的;

日常学习中和日常工作中,对于文件的操作的都有哪些种类?

创建文件、编辑文件、保存文件、关闭文件、重命名文件、删除文件、恢复文件。

2、Linux系统的文件目录结构

目录结构:

Bin:全称binary,含义是二进制。该目录中存储的都是一些二进制文件,文件都是可以被运行的。

Dev:该目录中主要存放的是外接设备,例如盘、其他的光盘等。在其中的外接设备是不能直接被使用的,需要挂载(类似windows下的分配盘符)。

Etc:该目录主要存储一些配置文件。

Home:表示“家”,表示除了root用户以外其他用户的家目录,类似于windows下的User/用户目录。

Proc:process,表示进程,该目录中存储的是Linux运行时候的进程。

Root:该目录是root用户自己的家目录。

Sbin:全称super binary,该目录也是存储一些可以被执行的二进制文件,但是必须得有super权限的用户才能执行。

Tmp:表示“临时”的,当系统运行时候产生的临时文件会在这个目录存着。

Usr:存放的是用户自己安装的软件。类似于windows下的program files。

Var:存放的程序/系统的日志文件的目录。

Mnt:当外接设备需要挂载的时候,就需要挂载到mnt目录下。

Linux的基本指令
一、指令与选项
什么是Linux的指令?

指在Linux终端(命令行)中输入的内容就称之为指令。

一个完整的指令的标准格式:Linux通用的格式

#指令主体(空格) [选项](空格) [操作对象]

一个指令可以包含多个选项

操作对象也可以是多个

例如:需要让张三同学帮忙去楼下小卖铺买一瓶农夫山泉水和清风餐巾纸,在这个指令中“买东西”是指令的主体,买的水和餐巾纸是操作的对象,农夫山泉、清风是操作的选项。

二、基础指令(重点)
1、ls指令
含义:ls (list)

用法1:#ls

含义:列出当前工作目录下的所有文件/文件夹的名称

用法2:#ls 路径

含义:列出指定路径下的所有文件/文件夹的名称

关于路径(重要):

路径可以分为两种:相对路径、绝对路径。

相对路径:相对首先得有一个参照物(一般就是当前的工作路径);

相对路径的写法:在相对路径中通常会用到2个符号“./”【表示当前目录下】、“…/”【上一级目录下】。

绝对路径:绝对路径不需要参照物,直接从根“/”开始寻找对应路径;

用法3:#ls 选项 路径

含义:在列出指定路径下的文件/文件夹的名称,并以指定的格式进行显示。

常见的语法:

#ls -l 路径

#ls -la 路径

选项解释:

-l:表示list,表示以详细列表的形式进行展示

-a:表示显示所有的文件/文件夹(包含了隐藏文件/文件夹)

上述列表中的第一列字符表示文档的类型,其中“-”表示改行对应的文档类型为文件,“d”表示文档类型为文件夹。

在Linux中隐藏文档一般都是以“.”开头。

用法4:#ls -lh 路径

含义:列出指定路径下的所有文件/文件夹的名称,以列表的形式并且在显示文档大小的时候以可读性较高的形式显示

参数含义:

2、pwd指令
用法:#pwd (print working directory,打印当前工作目录)

3、cd指令
命令:#cd (change directory,改变目录)

作用:用于切换当前的工作目录的

语法:#cd 路径

案例:当前在“/”下,需要使用绝对路径切换到/usr/local。

案例:当前在/usr/local下,需要使用相对路径切换目录到home目录下的Linux123用户家目录中去。

补充:

在Linux中有一个特殊的符号“~”,表示当前用户的家目录。

切换的方式:#cd ~

4、mkdir指令
指令:mkdir (make directory,创建目录)

语法1:#mkdir 路径 【路径,可以是文件夹名称也可以是包含名称的一个完整路径】

案例:在当前路径下创建出目录“yunweihenniux”

注意:ls列出的结果颜色说明,其中蓝色的名称表示文件夹,黑色的表示文件,绿色的其权限为拥有所有权限。

案例:在指定路径下创建出一个文件夹“yunweihenniux”

语法2:#mkdir -p 路径

含义:当一次性创建多层不存在的目录的时候,添加-p参数,否则会报错

语法3:#mkdir 路径1 路径2 路径3 …. 【表示一次性创建多个目录】

5、touch指令
指令:touch

作用:创建文件

语法:#touch 文件路径 【路径可以是直接的文件名也可以是路径】

案例:使用touch来在当前路径下创建一个文件,命名为Linux.txt

案例:使用touch来同时创建多个文件

案例:使用touch来在“Linux123”用户的家目录中创建文件,Linux.txt

6、cp指令
指令:cp (copy,复制)

作用:复制文件/文件夹到指定的位置

语法:#cp 被复制的文档路径 文档被复制到的路径

案例:使用cp命令来复制一个文件

注意:Linux在复制过程中是可以重新对新位置的文件进行重命名的,但是如果不是必须的需要,则建议保持前后名称一致。

案例:使用cp命令来复制一个文件夹

注意:当使用cp命令进行文件夹复制操作的时候需要添加选项“-r”【-r表示递归复制】,否则目录将被忽略

7、mv指令
指令:mv (move,移动,剪切)

作用:移动文档到新的位置

语法:#mv 需要移动的文档路径 需要保存的位置路径

确认:移动之后原始的文件还在不在原来的位置?原始文件是不在原始位置的

案例:使用mv命令移动一个文件

案例:使用mv命令移动一个文件夹

补充:在Linux中重命名的命令也是mv,语法和移动语法一样。

8、rm指令
指令:rm (remove,移除、删除)

作用:移除/删除文档

语法:#rm 选项 需要移除的文档路径

选项:

-f:force,强制删除,不提示是否删除

-r:表示递归

案例:删除一个文件

在删除的时候如果不带选项,会提示是否删除,如果需要确认则输入“y/yes”,否则输入“n/no”按下回车。

注意:如果在删除的时候不想频繁的确认,则可以在指令中添加选项“-f”,表示force(强制)。

案例:删除一个文件夹

注意:删除一个目录的时候需要做递归删除,并且一般也不需要进行删除确认询问,所以移除目录的时候一般需要使用-rf选项。

案例:删除多个文档

案例:要删除一个目录下有公共特性的文档,例如都以Linux开头

其中称之为通配符,意思表示任意的字符,Linux,则表示只要文件以Linux开头,后续字符则不管。

9、vim指令
指令:vim (vim是一款文本编辑器)

语法:#vim 文件的路径

作用:打开一个文件(可以不存在,也可以存在)

案例:使用vim来打开文件

退出打开的文件:在没有按下其他命令的时候,按下shift+英文冒号,输入q,按下回车即可

10、输出重定向
一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术。

“>“:覆盖输出,会覆盖掉原先的文件内容

”>>”:追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加

语法:#正常执行的指令 > / >> 文件的路径

注意:文件可以不存在,不存在则新建

案例:使用覆盖重定向,保存ls -la 的执行结果,保存到当前目录下的ls.txt

案例:使用追加重定向,保存ls -la的执行结果到ls.txt中

11、cat指令
作用1:cat有直接打开一个文件的功能。

语法1:#cat 文件的路径

作用2:cat还可以对文件进行合并

语法2:#cat 待合并的文件路径1 待合并的文件路径2 …. 文件路径n > 合并之后的文件路径

例如,合并3个文件,并存到一个文件中【配合输出重定向使用】

三、进阶指令(重点)
1、df指令
作用:查看磁盘的空间

语法:#df -h -h表示以可读性较高的形式展示大小

2、free指令
作用:查看内存使用情况

语法:#free -m -m表示以mb为单位查看

剩余的真实可以用的内存为1665mb。

Swap:用于临时内存,当系统真实内存不够用的时候可以临时使用磁盘空间来充当内存。

3、head指令
作用:查看一个文件的前n行,如果不指定n,则默认显示前10行。

语法:#head -n 文件路径 【n表示数字】

4、tail指令
作用1:查看一个文件的未n行,如果n不指定默认显示后10行

语法:#tail -n 文件的路径 n同样表示数字

作用2:可以通过tail指令来查看一个文件的动态变化内容【变化的内容不能是用户手动增加的】

语法:#tail -f 文件路径

该命令一般用于查看系统的日志比较多。

5、less指令
作用:查看文件,以较少的内容进行输出,按下辅助功能键(数字+回车、空格键+上下方向键)查看更多

语法:#less 需要查看的文件路径

在退出的只需要按下q键即可。

6、wc指令
作用:统计文件内容信息(包含行数、单词数、字节数)

语法:#wc -lwc 需要统计的文件路径

-l:表示lines,行数

-w:表示words,单词数 依照空格来判断单词数量

-c:表示bytes,字节数

7、date指令(重点)
作用:表示操作时间日期(读取、设置)

语法1:#date 输出的形式:2018年 3月 24日 星期六 15:54:28

语法2:#date +%F (等价于#date “+%Y-%m-%d” ) 输出形式:2018-03-24

语法3:#date “+%F %T” 引号表示让“年月日与时分秒”成为一个不可分割的整体

等价操作#date “+%Y-%m-%d %H:%M:%S”

输出的形式:2018-03-24 16:01:00

语法4:获取之前或者之后的某个时间(备份)

#date -d “-1 day” “+%Y-%m-%d %H:%M:%S”

符号的可选值:+(之后) 或者 - (之前)

单位的可选值:day(天)、month(月份)、year(年)

%F:表示完整的年月日

%T:表示完整的时分秒

%Y:表示四位年份

%m:表示两位月份(带前导0)

%d:表示日期(带前导0)

%H:表示小时(带前导0)

%M:表示分钟(带前导0)

%S:表示秒数(带前导0)

8、cal指令
作用:用来操作日历的

语法1:#cal 等价于 #cal -1 直接输出当前月份的日历

语法2:#cal -3 表示输出上一个月+本月+下个月的日历

语法3:#cal -y 年份 表示输出某一个年份的日历

9、clear/ctrl + L指令
作用:清除终端中已经存在的命令和结果(信息)。

语法:clear 或者快捷键:ctrl + L

需要注意的是,该命令并不是真的清除了之前的信息,而是把之前的信息的隐藏到了最上面,通过滚动条继续查看以前的信息。

10、管道(重要)
管道符:|

作用:管道一般可以用于“过滤”,“特殊”,“扩展处理”。

语法:管道不能单独使用,必须需要配合前面所讲的一些指令来一起使用,其作用主要是辅助作用。

①过滤案例(100%使用):需要通过管道查询出根目录下包含“y”字母的文档名称。

#ls / | grep y

针对上面这个命令说明:

①以管道作为分界线,前面的命令有个输出,后面需要先输入,然后再过滤,最后再输出,通俗的讲就是管道前面的输出就是后面指令的输入;

②grep指令:主要用于过滤

②特殊用法案例:通过管道的操作方法来实现less的等价效果(了解)

之前通过less查看一个文件,可以#less 路径

现在通过管道还可以这么:#cat 路径|less

③扩展处理:请使用学过的命令,来统计某个目录下的文档的总个数?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值