本文共 4456 字,大约阅读时间需要 14 分钟。
ls
是一个强大的命令,用于显示文件和目录的信息。它是每个Linux用户的好朋友。
man ls
:查看 ls
命令的手册info ls
:查看 ls
命令的信息ls --help
:显示 ls
命令的帮助信息-a
:显示所有文件(包括隐藏文件)-l
:显示详细信息(长格式)-i
:显示文件的inode编号-h
:显示单位换算(如字节、 kilobytes等)-m
:以逗号分隔文件名列出-t
:按照修改时间排序-r
:按照修改时间倒序排列-S
:按照大小排序# 列出所有文件,包括隐藏文件[root@localhost ~]# ls -a# 查看文件详细信息[root@localhost ~]# ls -l# 按照修改时间倒序排列[root@localhost ~]# ls -rt
cd
是“Change Directory”的缩写,用于切换到指定的目录。
cd ~
:切换到当前用户的家目录cd .
或 cd ./
:切换到当前目录cd ..
:切换到上一级目录cd -
:切换到上一次工作目录cd /usr/local/test
或 cd ./test
# 切换到根目录[root@localhost ~]# cd /# 切换到上一级目录[root@localhost /]# cd ..
cp
用于将文件或目录复制到指定位置。
cp [选项]... [源文件或目录]... [目标文件或目录]
cp [选项]... -t [目标目录] [源文件或目录]...
-a
:保留文件的属性(归档选项)-b
:目标文件存在时,创建备份文件(默认备份文件名为原文件名 + ~)-f
:强制复制(即使目标文件存在)-r
:递归复制目录-p
:保留文件的属性-i
:交互式模式(需要确认)-u
:只复制源文件更新于目标文件的版本# 复制文件[root@localhost scripts]# cp -v file file2# 复制文件到备份文件[root@localhost scripts]# cp -b file file2.bak# 复制目录[root@localhost scripts]# cp -r dir1 dir2
mkdir
用于创建目录,可以指定权限和递归。
mkdir [选项]... [目录名]...
-m
:设置目录的权限(默认权限为 755)-p
:递归创建父目录(如果不存在)-v
:显示创建过程# 创建单个目录[root@localhost tmp]# mkdir test# 创建多个目录[root@localhost tmp]# mkdir -p test1/test2/test3/test4# 创建带有指定权限的目录[root@localhost tmp]# mkdir -m 755 test2
mv
用于移动文件或目录,支持重命名。
mv [选项]... [源文件或目录]... [目标文件或目录]
mv [选项]... -t [目标目录] [源文件或目录]...
-b
:目标文件存在时,创建备份文件-u
:只移动源文件更新于目标文件的版本-v
:显示移动过程-i
:交互式模式(需要确认)-f
:强制移动(覆盖目标文件)# 移动文件并重命名[root@localhost scripts]# mv file{1..5} test/# 使用批处理脚本重命名文件[root@localhost test]# for file in `ls *.txt`; do mv "$file" "new_${file}"; done
pwd
显示当前工作目录的绝对路径。
-P
:显示实际路径(不使用链接)[root@localhost ~]# pwd# 显示实际路径[root@localhost mail]# pwd -P/var/spool/mail
touch
用于创建文件或修改文件的时间戳。
touch [文件名]
:创建文件(如果文件不存在)touch -m [时间戳]
:修改文件的修改时间touch -a [时间戳]
:修改文件的访问时间和修改时间touch -d [日期时间]
:修改文件的访问和修改时间到指定时间# 创建多个文件[root@localhost test]# touch file{1..10}# 修改文件时间[root@localhost test]# touch -m 202011111111 file
tree
用于以树状图形式显示目录内容。
-d
:只显示目录-L level
:指定显示的层级数目-P pattern
:显示匹配指定模式的文件-p
:显示文件的权限# 查看当前目录[root@localhost ~]# tree# 查看指定层级[root@localhost ~]# tree -L 2# 查看匹配特定模式的文件[root@localhost ~]# tree -P "*.gz"
basename
用于提取文件或路径的最后一个部分。
basename [路径]
# 提取路径的最后一个部分[root@localhost scripts]# basename /usr/bin/sort sort# 提取文件名的后缀[root@localhost test]# basename file1.txt txt
dirname
用于去除文件或路径的最后一个部分。
dirname [路径]
# 去除路径的最后一个部分[root@localhost scripts]# dirname /usr/bin/sort /usr/bin# 去除文件名的后缀[root@localhost test]# dirname file1.txt
chattr
用于设置或修改文件的隐藏属性。
chattr [ -RVf ] [ -v version ] [ mode ] [文件... ]
-R
:递归设置-V
:显示详细信息-f
:忽略错误信息mode
:设置文件属性(如 +i、-i、+A等)# 设置文件不可被修改[root@localhost test]# chattr -i file# 修改文件属性[root@localhost test]# chattr +A file
lsattr
用于显示文件的隐藏属性信息。
lsattr [ -RVadv ] [文件... ]
-R
:递归显示-V
:显示版本信息-a
:显示所有文件(包括隐藏文件)-d
:显示目录的属性# 显示所有隐藏属性[root@localhost test]# lsattr -a# 显示目录属性[root@localhost test]# lsattr -d
file
用于确定文件的类型,如设备文件、块设备、符号链接等。
# 检测字符设备[root@localhost dev]# file /dev/tty# 检测块设备[root@localhost dev]# file /dev/sda# 检测符号链接[root@localhost dev]# file /dev/stdin
mdsum
用于生成文件的MD5值,用于校验文件传输完整性。
-b
:以二进制模式读取文件-t
:以文本模式读取文件-c
:校验MD5值--status
:仅显示校验结果,不生成错误信息# 生成MD5值[root@localhost scripts]# mdsum file# 校验MD5值[root@localhost scripts]# mdsum -c file.md5
[root@localhost tmp]# mkdir -p /tmp/x/y1/y2/y1/a/y1/b/y2/a/y2/b
# 创建测试文件[root@localhost test]# seq -w 10 > file# 复制文件并校验[root@localhost test]# cp file file1[root@localhost test]# mdsum -b fileMD5-sum : 123456789abc123456789abc = file
[root@localhost test]# mv file{1..10} new_file{1..10}
[root@localhost test]# rm -rf test_dir
[root@localhost test]# touch .hidden_file[root@localhost test]# mv .hidden_file hidden_dir/
[root@localhost tmp]# mkdir /tmp/x/y1/y2/y1/a/y1/b/y2/a/y2/b
[root@localhost tmp]# touch /tmp/x/y1/file{1..10}
[root@localhost tmp]# mv /tmp/x/y1/file* /tmp/x/y2/
[root@localhost tmp]# rmdir -p /tmp/x/y1/y2/y1/a
[root@localhost tmp]# cp -a /tmp/x /tmp/x备份
通过这些命令,你可以在Linux系统中完成日常的文件管理任务。如果有任何疑问,可以通过手册或在线资源进一步学习。
转载地址:http://fygfk.baihongyu.com/