学习整理文件和文件夹常用的命令,记录常规用法,便于查找,详细的命令用法后续研究

mv是移动文件和文件夹,可以将文件夹移动到已经存在的文件夹,如果目标文件夹不存在,则会将当前文件夹重命名
| mv oldFolderName newFolderName |

1、ls查看文件夹下的内容(子文件夹、文件),展示的信息很少,只有名称

2、ll(等同于ls -l),表示会列出长内容,有文件的类型、权限、拥有者、更新时间、文件名、大小


cp复制文件/文件夹,-r表示递归复制文件夹下的子文件和子文件夹,一般在复制文件夹时要用;-f是强制;-u是源文件比目标文件更新时间才复制;-p是保留文件属性;-i是以交互的方式复制文件,例如存在时是否覆盖。
| cp -r sourceFolderName targetFolderName |

复制文件到文件夹,如果目标文件夹存在,则会提示是否覆盖

-r表示递归删除文件夹下的子文件夹和子文件,-f表示强制,支持同时删除多个文件,多个文件用空格隔开,如果要删除同一前缀的,可以前缀后面加星号。
删除指定的多个文件

删除前缀相同的文件

1、touch可以直接创建一个空文件

2、vi可以编辑文件,如果文件不存在,则新建一个文件,可以直接写入文件内容

3、vim和vi一样,可以编辑文件,如果文件不存在,则新建一个文件

4、echo > 覆盖文件,如果文件不存在则新建(本质是利用 > 和 >>,>是覆盖文件,>>是追加文件)

5、cat > 覆盖文件,如果文件不存在则新建,可以直接输入数据,Ctrl+C 退出,则创建完成(本质也是利用 > 和 >>,>是覆盖文件,>>是追加文件)

1、mv可以用来重命名单个文件
| mv olderFileName newFileName |

2、rename的批量处理能力很强大,一般在批量重命名时用的比较多,有三个参数,第一个参数是要修改的旧的字符,第二个是修改为的新的字符,第三个是要修改的文件
| rename olderStr newStr fileName |

1、vi编辑文件,按i出现Insert表示开始编辑,编辑完成后,按esc退出,按:wq,保存并退出,!q为强制退出,不保存已修改内容

2、vim同vi

3、nano编辑文件,功能很多,进入后直接编辑,可以复制粘贴,Ctrl+X退出,选择Y确认保存修改内容

1、cat查看文件所有内容,tac 按行倒序排查查看,-n显示行号

对于大文件需要支持翻页,可以采用| less或| more,操作参见less和more命令
| cat fileName | less |
| cat fileName | more |

2、less可以用来查看大文件(不是一次性全部读取),进入操作页面后,上箭头向上移动行,下箭头向下移动行,u(up)向上翻半页,d(down)向下翻半页,b(backward)向后翻一页,f(forward)向前翻一页,q(quit)退出

3、more可以用来查看大文件(一次性全部读取),-n表示每页显示n行数据,+n 表示从第n行显示,进入操作页面后,Ctrl+F向下翻页,Ctrl+B上翻页,q(quit)退出


4、nl和cat -n相似,默认显示行号,也可以和less和more搭配使用

5、tail从文件后面显示数据,-n 显示固定行数,-f 实时打印数据(Ctrl+C退出),常用于日志实时查看


6、head和tail相反,前者显示文件前n行,后者显示文件后n行,-n 表示显示固定的行数

1、grep可以搜索关键字,支持搜索多个文件

| grep keyword fileName1 fileName2 |

2、cat搭配grep,由于cat是打开整个文件,所以也是对全文的搜索,一般用于小文件,关键字用单引号或者双引号都可以
| cat fileName | grep 'keyword' |

3、tail搭配grep,tail如果不指定行数,默认就是显示最后10行,搜索也是针对显示的行数,不是针对全文
| tail -n number fileName | grep 'keyword' |

4、head搭配grep,head如果不指定行数,默认就是显示前10行,搜索也是针对显示的行数,不是针对于全文
| head -n number fileName | grep 'keyword' |

5、vi和vim可以搜索单个文件关键字,在查看模式下,输入 "/关键字" 回车搜索,按n光标向下移动,输入 "?关键字" 回车搜索,按n光标向上移动


1、find根据关键字查询指定目录下的文件,关键字为精确匹配,前后加*可以模糊匹配,小知识:. 表示当前目录,/ 表示根目录,-name搜索名称,-iname忽略大小写。


2、locate根据关键字查询文件,速度快,因为是在数据库搜索,关键字默认是模糊匹配,支持搜索多个关键字,通过空格隔开


3、whereis查询二进制文件,可以搜索多个关键字,通过空格隔开

4、使用which在PATH变量指定的路径中,搜索某个系统命令的位置,并返回系统命令所在的位置

5、type查看某个命令是否是系统自带

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通