Linux基础知识及命令(二)

x33g5p2x  于2021-09-24 转载在 Linux  
字(3.7k)|赞(0)|评价(0)|浏览(340)

一、不同文件的表示

1.1 字母表示的含义

d:目录
-:普通文件
l:链接文件
b:块文件
c:字节文件
p:管道文件
s:套接字文件

1.2 不同文件颜色表示的含义

  • 黑色:普通文件
  • 蓝色:文件夹
  • 天蓝色:链接文件
  • 绿色:可执行文件
  • 红色:压缩文件

二、目录与文件基本操作

2.1 ls(list)命令:

格式:ls	[选项]	[文件或目录...]

常用选项

-l:以长格式(Long)显示文件和目录的列表 ,ll=ls -l
-a:显示所有(All)子目录和文件的信息,包括“.“和”…“//
-A:与-a选项的作用基本类似,但有两个特殊,隐藏目录不会显示,“.“和”…“
-d显示目录(Directory)本身的属性,而不是显示目录中的内容
-h:以更人性化(Human)的方式显示出目录或文件的大小,此选项需要结合-l选项一起使用
-R:以递归(Recursive)的方式显示指定目录及其子目录中的所有内容

*
ls -l:以长格式(Long)显示文件和目录的列表 , 包括权限、大小、最后更新时间等详细信息。 ,ll=ls -l

  • ls -a: 显示所有(All)子目录和文件的信息,包括“.“和”…“//

  • ls -A:与-a选项的作用基本类似,但有两个特殊,隐藏目录不会显示,“.“和”…“

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

  • ls -h:以更人性化(Human)的方式显示出目录或文件的大小,此选项需要结合-l选项一起使用

  • ls -R:以递归(Recursive)的方式显示指定目录及其子目录中的所有内容

2.2 通配符

匹配任意一个字符
/*匹配所有非隐藏的字符无论多长多短,但不匹配“.”开头的文件,即隐藏文件
{1…10}1到10
{a…z}a到z
{A…Z}A到Z
[123]取其中之一显示,没有也无所谓
[0-9]匹配数字范围
\转义符,表示原来的意思
[ ^zhou]匹配列表中的除字符以外的
:lower:匹配小写字母
:upper:匹配大写字母
  • {1…10} :1到10

例如:在/opt下创建文件file{1…9}.txt

列出file{1…9}.txt

{a…z} : a到z

例如:在/opt下创建文件file{a…z}.txt

列出file{a…z}.txt,只显示小写

  • {A…Z}: A到Z

  • ? 匹配任意一个字符

/*:匹配所有非隐藏的字符无论多长多短,但不匹配“.”开头的文件,即隐藏文件

[123] :取其中之一显示,没有也无所谓

  • [0-9] : 匹配数字范围,一个[0-9] 代表匹配一位数。如果两位数,可以用[0-9] [0-9]来实现

  • \ : 转义符,表示原来的意思

[ ^zhou] :匹配列表中的除字符以外的

:lower: 匹配小写字母

2.3 别名

格式:alias 命令名=‘别名’  
注意等式两边不能有空格,alias ,临时修改,重启会失效,只有修改配置文件才会永久生效

例如:alias net=‘vim /etc/sysconfig/network-scripts/ifcfg-ens33’,此时用net即可代替,并修改网卡配置信息

  • unalias:删除别名,此时net不可以进入修改网卡并会报错

2.4 du(disk usage)命令

统计指定目录(或文件)所占用磁盘空间的大小 

格式:du [选项] [文件或目录...]

常用选项:

du:统计目录
du -a:录下的所有文件不仅统计当前目录,还统计当前目录下的所有文件
du -h:人性化统计 ,人性化的显示了单位
du -sh:只统计当前目录只统计所占用空间的大小,而不是统计每个子目录,文件大小

*
du:统计目录

  • du -a: 不仅统计当前目录,还统计当前目录下的所有文件

  • du -h: 人性化统计, 人性化的显示了单位

  • du -sh:只统计当前目录只统计所占用空间的大小,而不是统计每个子目录,文件大小

  • 注意:-a和-s不可以同时使用

2.5 创建新目录-mkdir

格式:mkdir [选项] 目录位置及名称...
要求:1.文件名最长255个字节
     2.可以使用特殊字符,除了/和 空字符,一般不使用
  • 案例一:在当前文件夹下创建文件夹public

  • 在当前文件夹下创建多个文件夹111 222 333

  • mkdir -p 递归创建目录
    举例:在当前文件夹下创建aaa/bbb/ccc

2.6创建新目录-touch

功能:

  1. 可创建新文件,并且可以大小为0字节
  2. 刷新时间
  3. 可以创建空文件
  4. 创建一个已经存在的文件,是实现了刷新文件的功能

案例一:创建一个文件,名称passwd

案例二:刷新时间

2.7 创建空文件文件三种方式

touch 1.txt
vim 2.txt
echo“ ”>3.txt

2.8 创建链接文件-ln

分类:
软连接(又称为符号链接)和硬链接
格式:ln [-s] 源文件或目录...链接文件或目标位置(加-s为软连接,不加为硬链接)

软硬链接的对比

对比项硬链接软连接
本质本质同是一个文件本质不是一个文件
inode相同不同
连接数创建新连接,连接数会增加,删除链接,连接数会减少删除新建不会改变
文件夹不支持支持
删除源文件只是链接数减1,但链接的访问不受影响无法访问链接文件
文件类型和源文件相同链接文件,和源文件无关
文件大小和源文件相同源文件路径长度

小结:硬链接相当于备份了一份,并保留所有属性

软连接相当于创建了一个快捷方式依托于源文件
*
案例一:

  • 案例二:不能将硬链接指向目录

  • 链接文件在实际生产环境中怎么用
    开发服务,放在1文件夹下,要升级成2,1就没办法用,要用2里面的文件。不可能让客户改变使用习惯,此时,链接就起作用了,把1文件夹做出一个链接文件,再把2指向它

2.9 复制文件或目录-cp

-f:-f:覆盖目标同名文件或目录时不进行提醒,而直接强制(Force)复制
-i:-i:覆盖目标同名文件或目录时提醒用户确认(Interactive ,交互式)(i的优先级高于f)
-p:-p:复制时保持(Preserve)源文件的权限、属主及时间标记等属性不变
-a:-a:和p的功能差不多,不过比p功能更强大,可以复制软连接
-r:-r:复制目录时必须使用此选项,表示递归复制所有文件及子目录
  • 案例一:如果对同一个文件连续复制三次,第一次复制 可以改名;第二次复制 将变成改名后的子目录,第三次复制 覆盖了,问是否覆盖



  • PS:复制多个文件,只能复制到目录或文件夹下,不可以直接复制到文件,并且这个目录必须存在

2.10删除文件或者目录—rm

格式:rm [选项] 要删除的文件或目录
-f:-f:不提醒,直接强制删除
-i:-i:提醒用户确认
-r:-r:递归删除整个目录树
  • 案例一:

案例二:

如果系统空间占用过大,没足够空间该怎么办?
答:删除大文件
如果删除大文件,空间还是不足?
答:因为还有别的人再用这个系统,此时并不会释放

2.11 移动文件或目录-mv

如果目标位置与源位置相同,则相当于执行重命名操作
格式:
mv [选项]... 源文件或目录... 目标文件或目录
  • 案例一:重命名

  • 案例二:移动目录

2.12如何批量改名

rename [选项] 旧名字 新名字 源文件名
  • 案例:

2.13 查找Linux命令程序所在的位置—which

格式:which 命令/程序名
  • 特点:

​ 搜索环境变量由PATH决定
​ 默认找到第一个目标后不再继续查找

案例一

这就是查找路径

案例二

2.14精细查找文件或目录——find

格式:find [查找范围] [ 查找条件表达式]
注意:查找范围必须在前面

特点:及时查找、精确查找、支持查找的条件比较多
缺点:查找慢
*
常用查找条件:
按名称查找:“-name”
按文件大小查找:“-size”
按文件属性查找:“-user”
按文件类型查找:“-type”
*
案例一:

-name:根据目标文件名称进行查找,允许使用“/*”及“?”通配符

案例二:

-size:根据目录文件的大小进行查找,一般使用“+”“-”号设置超过或小于指定的大小作为查找条件,常用的单位包括kB(注意k小写)、MB、GB

补充:dev/zero 可以无限写

​ dev/null 黑洞,写什么进去,都没有了,都找不回来了
*
查找/boot目录中超过10MB的文件

案例三:

//-type:/*/*根据文件的类型进行查找,类型指的是普通文件(f)、目录(d)、块设备(b)、字符设备文件(c)、链接(l)
块设备是指成块读取数据的设备,多个字节组合成一块(如硬盘、内存等)而字符设备指的是按单个字符读取数据的设备(键盘、鼠标等)

  • 查找/boot目录中所有的子目录

案例四:

-usr:/home是非管理员用户的家目录,管理员用户的家目录在/root

-nouser是找一个没有主人的文件夹,如果删了lsi。lisi文件夹就变成没了主人的文件夹

  • 同时使用多个条件查找的时候,各表达式之间可以使用逻辑运算符
    “-a ”表示同时成立
    “-o”表示或者or

​ 查找/boot目录中超过1MB和(或)名称以vm开头的所有文件

三、总结

  • Shell是一 种特殊程序

  • Linux命令的分类、 格式及使用方法

  • Linux常用命令

  • 查看及切换目录(pwd、 cd、 Is、 du)

  • 创建目录和文件(mkdir、 touch、 In)

  • 复制、删除、移动目录和文件(cp、 rm、 mv)

  • 查找目录和文件(which、 find)

相关文章