《Linux就该这么学》笔记(四)

2022-04-21 14:14:40 浏览数 (2)

文件目录管理命令

touch

代码语言:javascript复制
用于创建空白文件或设置文件的时间
touch [选项] [文件]
-a  仅修改读取时间(atime)
-m  仅修改修改时间(mtime)
-d  同时修改 atime mtime

touch -d "2020-04-06 10:32" filename

mkdir

代码语言:javascript复制
递归创建目录
mkdir -p /a/b/c

cp

代码语言:javascript复制
用于复制文件或目录
cp [选项]源文件 目标文件

递归复制
cp -r a b

mv

代码语言:javascript复制
用于剪切文件或将文件重命名
mv [选项]源文件 [目标路径|目标文件名]

rm

代码语言:javascript复制
用于删除文件或目录
rm [选项]文件

无确认删除文件
rm -f fileName

无确认删除目录
rm -rf dirName

dd

代码语言:javascript复制
dd命令用于按照指定大小和个数的数据块来复制文件或转换文件
dd[参数]
if      输入文件名称
of      输出文件名称
bs      设置每个块的大小
count   设置要复制块的个数

dd命令从/dev/zero设备文件中取出一个大小为560MB的数据块,然后保存成名为560_file的文件
dd if=/dev/zero of=560_file count=1 bs=560M

使用dd命令来压制出光盘镜像文件
dd if=/dev/cdrom of=RHEL-server.iso

file

代码语言:javascript复制
用于查看文件的类型
file 文件名

打包压缩与搜索命令

tar

代码语言:javascript复制
用于对文件进行打包压缩或解压
tar [选项] [文件]
-c  创建压缩文件
-x  解开压缩文件
-t  查看压缩包内有哪些文件
-z  用Gzip压缩或解压
-j  用bzip2压缩或解压
-v  显示压缩或解压过程
-f  目标文件名
-p  保留原始的权限与属性
-P  使用绝对路径来压缩
-C  指定解压到的目录

压缩
tar -czvf etc.tar.gz /etc

解压
tar -xzvf etc.tar.gz -C /root/etc

grep

代码语言:javascript复制
用于在文本中执行关键词搜索,并显示匹配的结果
grep [选项] [文件]
-b  将可执行文件(binary)当作文本文件(text)来搜索
-c  仅显示找到的行数
-i  忽略大小写
-n  显示行号
-v  反向选择--仅列出没有关键字的行

在Linux系统中,/etc/passwd文件是保存着所有的用户信息,而一旦用户的登录终端被设置成/sbin/nologin,则不再允许登录系统,因此可以使用grep命令来查找出当前系统中不允许登录系统的所有用户信息
grep /sbin/nologin /etc/passwd

find

代码语言:javascript复制
用于按照指定条件来查找文件
find [查找路径]寻找条件 操作
-name   匹配名称
-perm   匹配权限(mode 为完全匹配,-mode为包含即可)
-user   匹配所有者
-group  匹配所有组
-mtime -n  n    匹配修改时间-n指 n天以内, n指n天以前
-atime -n  n    匹配访问时间
-ctime -n  n    匹配修改文件权限时间
-nouser 匹配无所有者的文件
-nogroup    匹配无所有组的文件
-newer f1 !f2   匹配比文件f1新但比f2旧的文件
--type b/d/c/p/l/f 匹配文件类型(块设备、目录、字符设备、管道、链接文件、文本文件)
-size   匹配文件大小( 50KB为查找超过50KB的文件,-50KB为查找小于50KB的文件)
-prune  忽略某个目录
-exec ··· {} ; 进一步处理搜索结果命令

在整个文件系统中找出所有归属于linuxprobe用户的文件并复制到/root/findresults目录
find / -user luoxiaolei -exec cp -a {} /root/findresults/ ;

参考书目

  • 《Linux就该这么学》 刘遄 著

0 人点赞