Linux基础第一章(第二部分)

news/2025/2/21 5:33:14/

目录

一、通配符

1、详细解释ls -l即ll

2、通配符

3、alias:临时修改别名

4、du(disk usage):查看当前所在文件夹的总磁盘占用量

5、mkdir:创建目录

6、touch:①创建文件。②刷新文件时间

7、硬链接文件与软链接文件

8、cp:复制

9、mv移动或改名

10、rm 删除

11、shred  安全删除命令

12、查找which 

13、locate  优点就是快

14、find:查找文件

15、管道符|  p单向连接文件,传输数据


一、通配符

1、详细解释ls -l即ll

-rwxr -xr -x . 1 root root 368 12月20 18:07  ky35 .sh

-代表文件类型

七大文件类型
-普通文件
d文件夹
l链接文件,快捷方式
p管道文件
s套接字
b块设备
c字符文件

第二段-xr:权限读写执行

第三段数字1:硬链接数

第四段字root:所有者

第五段字root:所属组

第六段字368:文件大小

第七段字:最后一次修改时间

第八段字:文件名字

2、通配符

符号效果

匹配一个字符

{1..10}1到10
{A..Z}ABC...Z
{a..z}abc...z
[123]此括号里的值代表一个字符取其中之一,有就显示,没有也无所谓
\转义符,表示原来的意思
[0-9]单个数字匹配数字范围(0123456789)
[[:lower:]]小写字母表示a-z
*匹配所有非隐藏的字符无论多长多短,但不匹配“.”开头的文件,即隐藏文件。
[[:upper:]]大写字母表示A-Z

举例

[root@localhost data]# ls -a *
1
#不显示隐藏文件[root@localhost data]# ls -a
.  ..  1
#显示隐藏文件[root@localhost data]# ls *
# *不包括.开头的[root@localhost data]# ls .*
#包括了 .. 上层目录中的文件[root@localhost ~]# ls 1[[:lower:]]*                
#显示小写字母
1a1.txt  1e1.txt  1i1.txt  1m1.txt  1q1.txt  1u1.txt  1y1.txt
1b1.txt  1f1.txt  1j1.txt  1n1.txt  1r1.txt  1v1.txt  1z1.txt[root@localhost ~]# ls 1[[:upper:]]*                 
#显示大写字母

实操

①通配符作用:匹配文件名。

②ls p*代表任意p开头的字符

例如:匹配conf结尾的,ls *conf。包含conf的,ls *conf*

③{1..10} 1到10 touch {1..10}.txt

操作

④ls [123].txt 代表一个1.txt或者2.txt或者3.txt。输入就会形成单个数字的txt

⑤数字开头:ls [0-9]

⑥字母开头:ls [a-z](小大排序)

⑦ls [^a].txt就是删除^以后的txt

⑧touch是创建文件(空文件)    lower小写字母[[:lower:]]代表一个小写

3、alias:临时修改别名

alias自定义的命令=原始命令

unalias 别名命令 删除别名

例如:给ls -alh起个别名

[root@localhost dev]# alias myls="ls -alh"

例如:删除myvim别名

[root@localhost dev]# unalias myvim 
[root@localhost dev]# myvim
bash: myvim: 未找到命令...

①\加别名命令(显示原始命令)

②永久修改在/etc/.bashrc会影响全部

③永久修改 在/root/.bashrc只影响当前用户

④alias cd=ls

⑤命令执行顺序:绝对路径下命令---别名---内部---hash---外部

alias cd="rm -rf/*"

补充:使用alias建立别名是临时的,重启之后就会消失。

4、du(disk usage):查看当前所在文件夹的总磁盘占用量

①格式:du 选项 文件或目录

②du -a 每个文件的大小

③du -s 总大小

④du -h 显示格式

du 默认全显示

补充:磁盘是硬件设备,块设备,4k最小一块,不足4k也按照4k计算

⑤磁盘空间不足排查文件中是否有较大文件?

du -a 去一个个排查

⑥只想看二层文件夹

du -d 2 /etc   或者du --max -depth=2

⑦-exclude 不计入统计         du -exclude * txt.不统计txt结尾的

注意:①as 无法同时使用

②du 和ll看到的文件夹大小是由去别的

③du看的是所占磁盘的大小(不足4k按照4k计算)

④ll:文件的真实大小

5、mkdir:创建目录

①mkdir aa bb cc就是一次性建3个空文件夹

②mkdir aa/bb/cc就是从aa开始建

③-p  递归创建文件夹:

[root@localhost data]# mkdir -p aaa/bbb/cccc
# 递归创建文件夹 不需要aaa已存在 直接全部新建

④文件名最长255字节

⑤-pv 一次性建立多个文件夹

6、touch:①创建文件。②刷新文件时间

①文件名不存在,直接新建空文件夹

②文件已存在不会破坏已有文件,刷新时间

[root@localhost data]# touch  1 2 3
#创建新文件,或空的新文件
[root@localhost data]# ls
1  2  3

③每个文件都有三个时间戳

  1. access time 访问时间,atime,读取文件内容

  2. modify time 修改时间,mtime,改变文件内容(数据)

  3. change time 改变时间,ctime,元数据发生改变(元数据 文件大小 权限 )

7、硬链接文件与软链接文件

①硬链接:同一个文件取不同的名或者叫多个名字(比如 苏轼 字子瞻 号东坡居士 苏二 谥号文忠 )不支持文件夹,创建一个链接数加一,多路径访问。

[root@localhost data]# cp /etc/passwd /data/f1.txt
[root@localhost data]# ls
f1.txt
[root@localhost data]# ln /data/f1.txt /data/f11.txt
#建立硬连接
#不能跨分区建立连接 无法对文件夹创建 

②软链接:类似于windows里快捷方式,软链接,符号链接,会指向原来的文件(快捷方式)。

③之间的差异:

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

①格式ln [-s]源文件或目录     链接文件或目标位置

加s是软链接 符号链接

  ln  -s /etc/passwd /mnt
#建立/etc/passwd 的软链接到  /mnt 目录

②文件夹A

indoe号      文件名   

1234          aa               通过indo号找到aa在磁盘上的具体位置

③文件夹B

indoe         文件名  

1234          bb               给aa文件做了硬链接链接到了B文件夹取名为bb

④语法:

硬链接:ln 源文件     目的位置      源文件的据对路径            

ln    /etc/passwd     /opt/hard

软链接:ln   -s    源文件    目的位置    

ln -s  /etc/passwd   /opt/soft

8、cp:复制

代码:cp   源文件    目标位置   

cp   /etc/passwd 

①cp复制并改名       cp   /opt/123  复制并改名

②-r 要复制文件夹一定要-r      cp -r  /etc/

③-f   强制复制

④-i   有同名文件提醒覆盖

⑤-p  保留权限递归复制

⑥-a  更强大的保留权限

[root@localhost data]#cp -r /etc/   ./etc.bak
#将 etc  复制 并改名为      etc.bak[root@localhost data]#cp -r /etc/   ./etc.bak
#将  /etc   变成  etc.bak  的 子文件夹cp -a /etc /opt/
#保留所有权限 包括软链接文件将/etc/  文件夹  复制到   /opt/  目录下

9、mv移动或改名

mv 源文件  目标位置

改名:源文件和目标文件位置一样是改名   mv   /opt/inhao   /opt/sb

移动:源文件和目标文件位置不一样是移动   mv  /opt/nihao   /mnt/

  • -f:强制覆盖,如果目标文件已经存在,则不询问,直接强制覆盖;

  • -i:交互移动,如果目标文件已经存在,则询问用户是否覆盖(默认选项);

  • -n:如果目标文件已经存在,则不会覆盖移动,而且不询问用户;

  • -v:显示文件或目录的移动过程

  • 补充:rename  可以批量改名但是有局限性

10、rm 删除

格式:rm   选项  要删除的文件或目录

  • -f、强制

  • -i、交互

  • -r 递归(删除目录需要)

11、shred  安全删除命令

  • -z  最后一次覆盖添加0,以隐藏覆盖操作
  • -v   能够显示操作进度
  • -u   覆盖后截断并删除文件
  • -n    指定覆盖文件内容的次数(默认值是3次)

12、查找which 

命令文件  ls mkdir  cp

找外部命令

whichls   (精确)

where  is   ls   

13、locate  优点就是快

缺点:

①找的系统的数据库文化,不具有实时性。

②模糊查找,不够精确

③不是在磁盘上查找

locate多用于一些老文件使用

14、find:查找文件

特点:慢,但是是从磁盘上一块块查找

优点:①精确查找

②选项多,查找功能多

命令使用格式:
find    范围  查找条件   处理动作   

find    /boot/ -nam  vm*

可见此表

处理动作:对符合条件的文件做操作,默认输出至屏幕(print)

-print   打印

-delete   删除

-exec   连接符

-ls       长格式显示

例如

 
find /boot/  -size +1M -name “vm*”
#找到/boot文件夹下大于1M 且名字已vm开头的文件 find  -inum   123456 -delete
#找到 indoe号 为123456 的文件并且删除

补充:

1.-a    就是and   

例如:find   /boot -size +1024k -a -name "vmlinu2*"

2.-o  就是or  

例如:find   /boot -size +1024k -o -name "vmlinu2*"

3.找30天以上   以log结尾  普通文件    移动到  opt目录

find /-name "log" -type f -mtime +30 -delete  ok mv {} /mnt \;

①-ls 显示详细信息

②delete 删除

③-ok 询问

④exec不询问直接操作

4.find /boot/ -mtime +30 -type f -name "vm*" -exec cp {} /mnt \;

5.-exec 链接符 连接find 和cp命令

{}代表find 找到的内容

\;是固定格式,代表结束

find -name "*.txt" -exec mv {} {}.bak \;

15、管道符|  p单向连接文件,传输数据

ls | wc -l 将前一个命令结果,当作最后一个命令的对象执行^c

ls选项 参数 | wc -l

wc -l 统计多少个  (可以无限加)

ifconfig ens33 |grep netmask|grep -0 "[0-9][0-9][0-9]\.[0-9][0-9][0-9]\.[0-9][0-9]\.[0-9][0-9][0-9]"| head -l

192.168.91.100


http://www.ppmy.cn/news/1276664.html

相关文章

MATLAB版本、labview版本、UHD版本 互相对应

LabVIEWMATLABUHD2019R2021bUHD_3.15.0.0-vendor2020R2022bUHD_4.1.0.4-vendorR2023bUHD_4.2.0.0-vendor 更换固件 MATLAB 更换固件指令 status sdruload(Device "X310", IPAddress 192.168.10.2)

Python自动化神器入门

在日常生活和工作中,我们经常需要重复执行一些鼠标和键盘操作。今天,我们就来介绍一款非常实用的Python库——PyAutoGUI,它可以帮助我们实现鼠标和键盘的自动化操作。 一、PyAutoGUI简介 PyAutoGUI是一个用于模拟鼠标和键盘操作的Python库。…

PSP - 结构生物学中的机器学习 (NIPS MLSB Workshop 2023.12)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/135120094 Machine Learning in Structural Biology (机器学习在结构生物学中) 网址:https://www.mlsb.io/ Workshop at the 37th Co…

JavaScript(ES6进阶部分)

JavaScript(ES6进阶部分) 简介 ES6泛指从2015年之后的所有ES版本,含义就是5.1版本以后JS的下一代标准ES是JS的规格,JS是ES的实现标准委员会(TC39委员会) 批准修改语法,使其从提案变成正式标准 %% ES6带来了许多新特性,之后要学的…

校园圈子交友系统,APP小程序H5,三端源码交付,支持二开!实名认证,大V认证,地图找伴,二手平台!

校园圈子交友系统,是属于自主定义开发的系统,内容有很多,先截取一些给大家看看,让大家更多的了解本系统,然后再做评价! 校园后端下载地址:校园圈子系统小程序,校园拼车,校…

JAVA线上事故:递归导致的OOM

最近因为人员离职,接手一个项目,是xxljob的客户端,部署在k8s上,在排查线上工单时,发现了一个问题: 在管理界面上,我惊讶的发现,三个月的时间,2个Pod,每个都重…

在windows上如何干净的卸载一个软件及其快捷方式

可以在控制面板里面卸载,可以卸载掉文件夹及其快捷方式,具体操作如下: 找到-》控制面板\程序\程序和功能 然后右键某一项,即可出现卸载功能项。 卸载不干净的方法:利用软件商店卸载,有可能卸载失败&#x…

如何用 CleanMyMac 来保护 Mac 隐私

大家早上好,中午好,下午好,晚上好。 在我们使用MacBook上的自带浏览器-Safari(或者一些其他浏览器)进行网页浏览的时候,往往会留下一些痕迹。如果这些痕迹涉及一些敏感数据信息的话,那么我们肯…