文章目录
前言:额,命令感觉还是有点多哈,感觉我的整体布局挺丑的,虽然排版是丑了点但是还是希望大家无论是简单的命令还是复杂的命令自己都去打一遍,这样印象会更深刻些。
一.pwd命令
作用:显示当前目录
用法:pwd
二.cd命令
作用:改变目录位置
用法: cd . . .[OPTION] . . .[FILE]. . .
cd 目录路径 - 进入指定的目录中去
cd … - 返回父目录
cd / - 进入根目录
cd 或 cd ~ - 进入用户主目录cd ./* - 进入当前目录下*表示的子目录其实就等于cd/
三.ls命令
用法: ls . . .[OPTION] . . .[FILE]. . .
常用参数:
1.不带任何参数 列出当前目录下的所有文件和子目录
2. -F 分类显示,方便阅读
3. -a 显示隐含文件
4. -l 查看文件的各种属性
可以组合起来一起使用
四.touch命令
作用:创建文件
用法:touch 文件名
touch .test//隐含文件
touch test//普通文件
普通文件的创建:
隐含文件的创建:想要查看不能只用ls要用ls -a才看得到。
五.mkdir命令
作用:创建目录
用法: mkdir . . .[OPTION] . . .[FILE]. . .
mkdir 一次可以建立一个或 几个目录
常用参数:
1. 不带任何参数 创建相应目录,如果目录的父级目录路径不存在,则创建失败;
2. -p 创建相应目录,如果目录的父级目录路径不存在,则一起创建;
无参数:
有参数:-p(可以创建一个目录包括子目录而无参数的不行)
六.移动命令 mv
用法: mv . . .[OPTION] 源文件 目标文件
常用参数:
1.不带任何参数 将源文件移动到目标文件,注意:如果目标文件存在则替换;
2.-i 将源文件移动到目标文件,如果目标文件存在则提示是否替换;
3.-b 将源文件移动到目标文件,如果目标文件存在则不进行覆盖,而是在目标文件后加~
不带参数:
-i:(会有提示信息是否覆盖n/y)
-b:
七.复制命令cp
用法: cp . . .[OPTION] 源文件 目标文件
常用参数:
1.不带任何参数 将源文件复制到目标文件,注意:如果目标文件存在则替换;
2. -i 将源文件复制到目标文件,如果目标文件存在则提示是否替换;
3. -b 将源文件复制到目标文件,如果目标文件存在则不进行覆盖,而是在目标文件后加~
4. -r 将子目录及其中的文件一起复制到另一个子目录下
总结:其实和上面的移动类似就不贴代码了🤭自己可以试试
八.删除命令rm
删除命令可以一次永久性删除一个或几个文件(包含目录)
用法: rm . . .[OPTION]. . . [FILE]. . .
常用参数:
1、 不带任何参数 删除文件或相应目录,不给予任何提示;
2、 -i 删除文件或相应目录,删除时进行提醒;
3、 -f 强制性删除文件或相应目录;
4、-r 将子目录及其中的文件一并删除。(慎用!特别时在root 权限下)
统一下:如果真的要删除一个目录的话就直接用rm -rf
删除要谨慎,不能乱搞(下面这一搞系统就废了)
八.文件链接ln
ln 建立文件链接用法: ln . . .[OPTION] 源文件 目标文件
常用参数:
1、 不带任何参数 创建硬链接,ls -i 查看可以看到两个文件的inode 值一致;
2、 -s 创建软链接,即别名,如果源文件删除,则软链接(别名)也无法访问。
创建软链接是一个别名,如果把源文件删除,则软链接的那个文件也就不能用了,硬链接的话不会这样,删了源文件硬链接的那个那个文件依然可以访问。
无参数:
有参数 -s
总结:创建软链接是一个别名,如果把源文件删除,则软链接的那个文件也就不能用了,硬链接的话不会这样,删了源文件硬链接的那个那个文件依然可以访问。
九.改变文件所有权 chown 和 chgrp
首先:有个概念 是关于属组以及用户还有权限的看下图
属主:每个文件都有一个创建用户(属于他)这个就称为属主,而我们在安装Linux系统时如果不主动设置,那么Linux系统会主动给用户分配一个和用户名一模一样的属组,一个属组可以包含有多个用户
就如图片中的备注一样,多个用户可以使用同一个数组,当创建用户时如果没有特别去设置他,默认是用户名。
1.chown 命令用于改变文件的所有权。
用法: chown . . .[OPTION] [OWNER][:[GROUP]] FILE . . . 要先转到特权模式
常用参数:
不带任何参数 改变单个或多个文件的属主和属组;
-r 改变一个目录及其下所有文件(和子目录)的所有权设置。
不带参数:
上面的例子用的是root:root test11,也可以用 :root只改变属组。
带参数-r
其实和前面的一样就是连带嵌套的样子,自己可以试试。
2.chgrp(用于单独设置文件的属组。)
用法: chown . . .[GROUP] FILE . . .
- chgrp nogroup text.txt
3.改变文件权限 chmod
chmod 用于改变一个文件的权限。它以“用户组 +/- 权限”的表达方式来增加/删除相应的权限。具体来说,用户组包括了文件属主(u)、文件属组(g)、其他人(o) 和所有人(a),而权限则包括读取,写,执行(r、w、x)
用法: chmod . . .[OPTION] . . .[FILE]. . .
例:
chmod u+x test.txt
chmod u-x test.txt
chmod ug=wr、o=r text.txt
十.阅读文件的头部和尾部: head 和 tail
用法: head/tail . . .[OPTION]. . . FILE
常用参数:
1. 不带任何参数 显示文件的头部/尾部 10 行;
2. -n 按指定的行数显示文件的头部/尾部 ;
不带参数:
带参数 -n:
十一.查看文本文件: cat 、more 和 less
① cat命令用来一次性查看全部文本文件的内容,后跟文件名作为参数.也可以带上 -n 显示每行 的行号。如果文件长达几十上百页,不建议使用 cat.
②more 命令用来分页查看文本文件。空格翻页;回车向下滚动一行;Q键退出。
③less更人性化的文本阅读工具。
十二.编辑器: vim
vim 是UNIX 和 Linux 上标配的编辑器,功能十分强大。用法 :vim file 或 vim
编辑保存文件分插入和命令两种模式。
1.插入模式
操作:输入字符,并可以按光标键移动输入字符位置.(刚vim进入文件时是命令模式)
2.命令模式
执行除输入字符之外的所有操作,包括保存、搜索、移动光标等。vim 启动默认是在命令模式,如果在编辑模式,需要按 Esc 切换回命令模式.可以使用光标键控制上下左右移动,或者 h、j、k、l移动。
3.文件的保存与退出
保存文件、退出等需要切换到行命令模式,在插入模式下输入 Esc 再 输入 :w :q 或 :wq 等。
注意前提:须切换到命令模式。注意组合命令执行的顺序:w ->q ->!
4.文件中搜索字符串
前提:需切换到命令模式
/string 用于向下搜索一个字符串
?string 用于向上搜索一个字符串
如果需要启动或关闭大小写敏感,执行
:set ignorecase //不分大小写
:set noignorecase //分大小写
5.文件中替换字符串
前提:需切换到命令模式。
语法 : :[range]s/pattern/string/[c、e、g、i]
这条命令将 pattern 所代表的字符串替换成 string。开头的range 用于指定替换作用的范围,如“1,10” 表示从第1行到第10行,“1,$”表示从第1行到最后一行,也就是全文。全文也可以用 “%” 表示。
最后的方括号是可选选项,含义如下:(我一般是不用方括号里的)
把1~11行的"1314"变成"嘻嘻嘻嘻"
6.删除、复制、粘贴
前提:需切换到命令模式。
7.撤销和重做
前提:需切换到命令模式
8.程序员特有配置:
:syntax on ## 语法高亮
:set autoindent ## 自动缩进
:set shiftwidth=4 ## 设置Tab 键对应的空格数
十三.查找和定位常用命令
1.find 命令
作用: 在指定范围内迅速查找到文件。
用法: find [OPTION] [path . . .] [expression]
例子1:在当前目录下找test文件
例子2:在根目录下找test文件(范围太大了速度会慢些,要尽可能缩小范围)
【OPTION选项】 特殊情况才会使用,建议日后查帮助
常用参数:
-type 查找时指定文件的类型,可使用参数如下表;
-atime n 查找最后一次使用在n天前的文件,n 使用负数表示;
-mtime n 查找最后一次修改在n天前的文件;
-maxdepth n 查找目录的最大深度
-mindepth n 从指定的目录的第几层深度开始查找
-type对应的表:
例3:在该目录下找最近一天内访问的文件且名字为test(注意-atime后要为负数)
具体信息:
例4:在当前目录向下最小深度为1最大深度为2(向下深度为1:就是该目录下的文件和目录)
2.locate 命令
作用: 火箭般的速度定位文件。
用法: locate [expression] pattern
locate 并不进入子目录进行搜索,它通过检索数据库来确定文件的位置。可以使用 updatedb 来更新检索数据库。 (有时候找不出来的时候可能是因为没有更新数据库所以就要在特权模式下更新数据库利用updatedb)
例子: