Linux文件管理类命令及命令别名

时间:2022-11-16 19:47:23

文件查看类命令:
cat:
tac: 从文件尾部开始显示

分屏显示:
more [option] 文件名: 查看至文件尾部会退出
空格为翻页
less [option] 文件名: 查看至文件尾部不退出
ctrl+d: 往下翻半屏
ctrl+u: 往上翻半屏
k: 往上翻一行
enter:往下翻一行
1J: 第一行
: 最后一行
/keyword: 查找指定字符,从文件头开始
?keyword: 查找指定字符,从文件尾开始
n: 往下找
N: 往上找
#G: 定位某一行
q:
首尾查看:head, tail
head [options] 文件名
-n: 指定查看多少行,默认是前十行,n可有可无

head -5 messages: 显示messages文件的前五行
head -n 5 messages: 显示文件前五行
head message: 默认显示文件前十行

tail [options] 文件名
-n: 指定查看多少行,默认是后十行,n可有可无
-f: 跟随文件新增的内容,用于查看日志文件

tail -5 messages: 显示messages文件的后五行
tail -n 5 messages: 显示文件后五行
tail message: 默认显示文件后十行
tail -f log.txt 实时监控文件,如果有新内容,会显示出来

文件的时间戳管理工具
文件
元数据:文件属性信息,如属主、属组、大小、类型、时间戳的等
数据:文件内容

时间戳:
最近一次被access的时间(read): access time, atime
最近一次被modify的时间(write): modify time, mtime
最近一次被change的时间(metadata, write): change time, ctime

touch [option] 文件名
-a: 仅修改atime
-m: 仅修改mtime
-t STAMP: [[CC]YY]MMDDhhmm[.ss]
-c: 不创建空文件

文件元数据查看:stat

touch -a -t 201510101425.30 aa: 自定义修改时间
touch -c file1: 假如file1不存在,则不会被创建

文件管理工具:cp, mv, rm

文件复制:源文件,目标位置
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...

cp SRC DEST:
如果DEST不存在,复制SRC为DESK,即相当于复制且重命名
如果DEST存在:
如果DEST是文件,则覆盖
如果DEST是目录,将文件复制进DEST目录下,保持文件原名

cp SRC... DIRECTORY: 如果同时指定了多个源文件,则目标必须是目录

注意: 如果源文件是符号链接文件,则复制时会拷贝链接指向的源文件的内容

cp的常用选项:
-r: 复制目录时实现递归复制
-d: 不跟随符号链接文件指向的源文件,即复制链接文件本身而非其指向的文件
-a: 相当于-dr
-i: interactive, 目标文件存在时,提醒用户是否执行覆盖(y/n)
-f: force, 强行覆盖

cp -r /etc /tmp/: 把etc目录复制到tmp下
cp -r /etc/* /tmp/: 把etc目录下的所有文件及目录复制到tmp下
which cp: 查看cp命令本身及路径

文件移动:mv
mv [OPTION] SRC DEST
mv [OPTION] SRC... DEST
-i: interactive
-f: force

文件删除:rm
rm [OPTION] FILE...
-r: 递归删除目录及其内部所有文件
-f: 强制删除

注意:建议先移动到某专用的目录下,过一段时间再清理

bash的特性之命令别名:
alias显示所有的命令别名

定义别名:alias 命令别名='真实的命令'
alias NAME='VALUE'
注意:在命令行中定义的别名,仅对当前shell进程有效;如果想永久有效,需要定义在配置文件中;
仅对当前用户有效: ~/.bash
对所有用户有效: /etc/bash

注意:直接编辑配置文件

撤销别名:unalias 命令别名
unalias NAME