Linux 命令
文件磁盘管理
pwd (显示路径命令)
pwd 显示工作目录
显示目录
echo $PWD 查看当前目录绝对路径
echo $OLDPWD 查看上次工作目录
pwd -P a.link 如果目录是个符号链接,pwd 显示链接(link)路径;pwd -P 显示实际路径
ls (显示文件目录命令)
ls 显示文件目录命令
ls 选项 目录
查看目录
ls -l 查看当前目录下文件以及其属性信息
ls -lh 以易于阅读的格式输出文件大小
ls -a 列出目录下所有文件,包括隐藏文件
ls -i 显示每个文件的inode 号
ls --full-time 显示完整的时间
ls -R /root 递归显示子目录
ls --color= auto 列出文件并标记颜色分类
ls -F 按照特殊字符对文件进行分类
ls -ltr 按修改时间倒序列出文件和文件夹详细信息
ls -lt 根据修改时间排序
ls -ld /etc 显示目录详细信息
ls -n 打印文件的UID和GID
ls -m 所有项目以逗号分隔,并填满整行行宽
ls -l 1.c 显示指定文件的详细信息
ls -p 对目录加上表示符号"/"
ls -lr 逆序排列
ls -lS 根据文件大小排序
cd (目录切换目录)
cd 目录切换目录
cd 目录地址
目录切换
cd ./ 切换到当前工作目录
cd .. / 切换到上级目录
cd .. /.. / 切换到上上级目录
cd ~ 进入当前用户的家目录
cd - 进入上次工作目录
cd t* 使用通配符切换目录( 匹配到多个情况下默认选择第一个进入)
cd ! $ 把上个命令的参数作为cd参数使用 ! $表示
mkdir (创建目录命令)
mkdir 创建目录命令
mkdir 选项 参数 目录
创建目录
mkdir testdir 创建一个空目录
mkdir -m 775 testdir 创建权限为755的目录
mkdir -p a/b/c 递归创建多个目录/创建存在或不存在的目录
mkdir -p -v a/b/c 创建目录的过程中显示信息
mkdir html{ 1.. 9} 批量创建目录
mkdir project/requests/{ bin,lib,language/{ en,zh} ,doc/{ chm,pdf,word} } -v -p
project
` -- requests
| -- bin
| -- doc
| | -- chm
| | -- pdf
| ` -- word
| -- language
| | -- en
| ` -- zh
` -- lib
rmdir (删除目录命令)
rmdir 删除目录命令
rmdir 选项 目录
删除空目录
rmdir testdir 删除空目录
rmdir testdir1 testdir2 删除多个空目录
rmdir -p a/b/c 删除指定目录及其上级目录
rmdir testdir 删除非空目录报错
rmdir -p -v a/b/c 删除过程中显示详细信息
find (文件查找命令)
find 文件查找命令
find 查找的目录 选项 参数
( ./代表当前目录)
按文件名查找
find ./ -name '.*txt' 区分大小写
find ./ -iname '.txt' 不区分大小写
find ./ ! -name '.txt' 查找不是该文件名的文件
按路径查找
find -path /usr/*local 查找目录或者文件
按文件类型查找
find ./ -c f 查找普通文件
find ./ -c l 查找符号连接
find ./ -c d 查找目录
find ./ -c c 查找字符设备
find ./ -c b 查找块设备
find ./ -c s 查找套接字
find ./ -c p 查找Fifo
按文件时间查找
find ./ -amin 2 查找系统中最后2分钟访问的文件
find ./ -cmin 2 查找系统中最后2分钟改变文件状态的文件
find ./ -mmin 2 查找系统中最后2分钟改变文件数据的文件
find ./ -atime 2 查找系统中最后2x24小时访问的文件
find ./ -ctime 2 查找系统中最后2x24小时改变文件状态的文件
find ./ -mtime 2 查找系统中最后2x24小时改变文件数据的文件
按文件大小查找
b —— 块(512字节)
c —— 字节
w —— 字(2字节)
k —— 千字节
M —— 兆字节
G —— 吉字节
find ./ -size +10k 查找大于10k的文件
find ./ -size -10k 查找小于10k的文件
find ./ -size 10k 查找大于10k的文件
查找目录深度
find ./ -maxdepth 3 -size +10k 目录最大深度为3
find ./ -mindepth 3 -size +10k 目录最小深度为3
mv (移动或重命名文件命令)
mv 移动或重命名文件命令
mv 选项 文件
移动和重命名文件
mv 1.sh 2.sh 重命名文件
mv 2.sh testdir 移动文件到指定目录中
mv 1.sh 2.sh testdir 批量移动文件到指定目录中
mv -t a html{ 1.. 10} 批量移动文件到指定目录中 -t选项
mv -i 1.sh testdir 覆盖前询问
mv -f 1.sh testdir 覆盖前不询问
mv testdir1 testdir2 移动目录
mv * .. / 移动当前文件夹下的所有文件到上一级目录
mv .. /2.sh ./ 将上级目录的文件移动到当前目录中
mv -bv 2.sh .. / 创建备份文件
mv -v .. /2.sh ./ 详细显示进行的步骤
mv -fu 2.sh .. / 更新选项( 只在源文件文件比目标文件新,或目标文件不存在时才进行移动)
mv -n 2.sh .. / 不覆盖已存在文件( 目标目录已存在文件不移动)
cp (文件复制命令)
cp 文件复制命令
cp 选项 文件
复制文件
cp 1.sh testdir/1.sh 复制文件
cp 1.sh testdir/ 复制一个文件到目录中
cp a b c testdir/ 拷贝多个文件到指定目录中
cp testdir1 testdir2 递归复制目录及其子目录内的所有内容
cp -P 2.sh.link1 2.sh.link2软链接完全复制( 复制时附带软链接所指的对象)
cp 2.sh.link1 2.sh.link2 或者 cp -L 2.sh.link1 2.sh.link2软链接不完全复制( 复制时不附带软链接所指的对象,成为一个文件)
cp -r * testdir/ 拷贝目录,软硬链接也会被拷贝
cp -v * 1.sh .. /1.sh 详细显示命令执行的操作
cp -i * testdir/ 覆盖前询问( 默认询问,使前面的 -n 选项失效)
cp -bv 2.sh testdir/ 覆盖已存在的文件目标前将目标文件备份
cp --attributes-only 1.sh .. /2.sh只拷贝文件属性,不拷贝文件内容
cp -fv * .. / 强制拷贝文件
创建软硬链接
cp -l a aa.hlink 创建文件的硬链接,而不是拷贝
cp -s a a.slink 创建文件的软链接,而不是拷贝
wc (统计文本内容)
wc 统计文本内容
wc 选项 文件
统计文件
wc -c 1.py 统计1.py文件的字节数
wc -m 1.py 统计1.py文件的字符个数
wc -l 1.py 统计1.py文件的行数
wc -L 1.py 统计1.py文件的最长行的字符长度
wc -w 1.py 统计1.py文件的单词数
文件权限管理
chown (修改文件所有者命令)
chown 修改文件所有者目录
chown 选项 文件/目录
修改所有者
chown user 1.py 将文件所有者改为user
chown -R user1 testdir 将目录递归修改所有者为user
chgrp (修改文件所属组命令)
chgrp 修改文件所属组命令
chgrp 选项 文件/目录
修改所属组
chgrp user 1.py 修改所属组为user
chgrp -R user1 testdir 将目录递归修改所属组为user
chgrp -R user testdir 递归修改目录所属组为user
chmod (修改文件权限命令)
chmod 修改文件所有者目录
chmod 选项 文件/目录
修改文件权限
chmod u+x 2.py 给文件2.py 所有者可执行权限
chmod g+w 2.py 给文件2.py 所属组可写权限
chmod -R o+r testdir 递归修改目录给其他人可读的权限