主目录即用户登录目录(用户登陆的时候默认的目录就是主目录)
1.pwd命令:用来显示当前工作目录的路径
示例:用pwd命令获取主目录的路径
2.cd命令:用来切换工作目录
cd 切换到主目录
cd ~ 切换到主目录
cd . 切换到当前目录
cd .. 切换到上级目录
cd - 切换到上次进入的目录
示例:进入根路径下的/mnt目录,并显示路径
返回到主目录
使用pwd获取返回到的主目录的路径,发现确实已切换到主目录下
进入跟路径下的/home目录
发现/home和/mnt是同级目录
使用命令进入上一次进入的目录,即主目录(当前是/home目录,上一次输入的命令是cd ~,即主目录)
使用cd ..进入上一层目录
当前目录是主目录,上一层目录即/home目录
注意:如果路径是从根路径开始的,则路径的前面需要加上 “ / ”,如 上面例子中提到的“ /mnt ”和“/home”都为根路径下的目录,所以需要“/”,通常进入某个目录里的文件夹,前面不用加 “ / ”。
3.mkdir命令:创建目录
通过mkdir命令可以创建一个新的目录。参数-p可以递归创建目录。
注意:新创建的的目录名不能与当前目录中已有的目录或文件同名,并且目录的创建者必须对当前目录具有写权限。
示例:创建一个UFE的目录
递归创建目录
在主目录下创建一个a目录,a目录下又创建了一个b目录,此即为递归创建目录。
进入a目录,发现a目录下确实有b目录。
4.rmdir命令:删除目录
rmdir命令用来删除一个目录。删除时必须离开此目录,并且目录必须为空目录,不然提示删除失败。
示例:删除刚才创建的a目录
删除失败,因为a目录不为空,所以先得删除b目录,要想先删除b目录,就得先进入到a目录中,或者也可使用绝对路径来删除b目录
如上显示,b目录删除成功
然后退出a目录,把a目录删除即完成目标
如上所示,a目录删除成功
5.touch命令:创建新文件,更新文件的访问和修改时间
示例:在主目录下创建1.txt文件
创建成功
同时创建多个文件
6.rm命令:删除文件
使用此命令可删除文件或目录
注意:删除后便不可恢复
rm -i 以交互方式进行删除,即删除前询问是否确定删除
rm -f 强制删除,无需提示,忽略不存在的文件
rm -r 递归删除目录下的内容,删除文件夹时可使用此参数
示例:删除主目录下的刚才创建的1.txt
rm 后不加参数,默认强制删除
以交互方式删除2.txt
强制删除3.txt
平时所见的rm -rf为强制删除文件夹下的所有内容
强制删除此前所创建的目录UFE
同时删除多个文件
上图所示即为初始主目录下的文件夹
7.创建并编辑文件命令
示例:创建一个demo.txt的文件
先创建了一个Demo的目录,然后使用vim demo.text 创建了一个文件,并进入了编辑模式,即进入了vim编辑器中,按i进入编辑模式,开始写文件,写完之后按esc退出编辑模式,然后按:wq保存并退出。
8.cat命令:查看或者合并文件内容
示例:查看文件内容
合并文件内容并查看
将demo.txt和demo1.txt合并成newdemo.txt
使用ls命令后发现合并后的文件和被合并的文件位于同级目录下
cat -n 加行号显示文件内容
tac命令用来倒序输出文件内容
head命令用来输出文件内容(默认输出10行)
显示test.txt的前5行内容
head -n -5 test.txt并不是输出文件的倒数第5行,而是输出文件的前(总行数-n)行
tail也可输出文件(默认输出倒数10行的内容)
输出文件的后5行内容
tail -f表示动态刷新文件末尾,常用于查看日志
9.cp命令:拷贝文件
将给出的文件或目录复制到另一个文件或目录中。
cp -a 复制目录时使用,保留链接、文件属性,并递归地复制目录,即此命令保 持文件的原有属性
cp -f 已经存在的目标文件而不提示
cp -i 交互式复制,在覆盖目标文件之前给出提示
cp -r 若给出的源文件是目录文件,则递归复制该目录下的所有目录和文件,目 标文件必须是一个目录名
cp -v 显示拷贝进度
示例:将Demo目录下的demo.txt拷贝到demo1.txt中
发现原先的demo1.txt的内容已经被重写
将主目录下的Demo目录复制到ufe目录中
复制之前,ufe目录下只有一个文件demo.text,将Demo整个目录复制到ufe目录下之后,ufe目录下除了其本身的文件外还多了一个目录,即Demo
10.mv命令:移动文件
使用mv命令可以移动文件或目录,也可以给文件或目录重命名。
mv -f 强制性移动,若有覆盖也不提示
mv -i 交互式移动,如果mv操作将导致对已存在的文件进行覆盖,则询问是否 覆盖
mv -v 显示移动进度
示例:将主目录上的file文件重命名为file1
因为主目录上只有file文件,没有file1文件,所以执行mv file file1此命令后相当于给文件重命名
将file1文件移动到ufe目录下
11.ls命令:查看文件信息
列出目录的内容,是用户最常用的命令之一。
ls -a 显示指定目录下的所有目录与文件,包括隐藏文件
ls -l 以列表方式显示文件的详细信息,与ll(字母ll)等价
ls -h 配合ls -l一起使用,以人性化方式显示文件大小
示例:查看主目录显得文件信息
查看文件的详细信息
ls -al 显示所有文件的详细信息
文件的详细信息中,第一列中10个字母代表的意思分别是:
第1个字母:代表文件类型(d代表目录文件,-代表普通文件)
第2~4个字母:代表用户的权限(最高权限为7,即读、写、执行权限都有,也就是777,r的权限为4,w的权限为2,执行的权限为1)
第5~7个字母:代表用户组的权限
第8~10个字母:代表其他用户的权限
3位权限分别为r、w、e,即读(read)、写(write)、执行(exe)权限
12.find命令:查找文件
通常用来在特定文件夹下搜索符合条件的文件,也可以用来搜索特定用户属主的文件。
find ./ -name test.txt 查找当前目录下所有名为test.txt的文件
find ./ -name '*.txt' 查找当前目录下所有后缀为.txt的文件
find ./ -name "[a-z]*" 查找当前目录下所有以小写字母开头的文件
find ./ -size -2M 查找当前目录下小于2M的文件
find ./ -size +2M 查找当前目录下大于2M的文件
find ./ -size 2M 查找当前目录下等于2M的文件
find ./ -size +4K -size -2M 查找当前目录下大于4K小于2M的文件
find ./ -perm 0777 查找当前目录下权限为777的文件
示例:
13.tar命令:归档管理
用于把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据。
tar -c 生成档案文件,创建打包文件
tar -v 列出归档解档的详细过程,显示进度
tar -f 指定档案文件名称,f后面一定是.tar文件
tar -t 列出档案中包含的文件
tar -x 解开档案文件
注意:须将f放在参数的最后
示例:将Demo目录下的四个.txt文件进行归档
解开归档文件
14.gzip命令:文件压缩解压命令
tar与gzip结合使用用来实现文件的打包与压缩。tar只负责打包,gzip负责对tar打包后的文件进行压缩。
gzip -d 解压
gzip -r 压缩所有子目录
示例:压缩刚才打包的test.tar文件
发现test.tar显然已经由10K被压缩到了256字节
对刚才的压缩文件进行解压缩处理
tar命令并没有压缩功能,但是加一个-z的参数后,便能实现tar命令的打包压缩。
示例:将Demo目录下的所有.txt文件压缩
tar命令解压缩:在tar命令解开归档文件的参数列中追加一个参数z
示例:解压test1.tar.gz文件
解压到指定目录下:-C
示例:将test1.tar.gz解压到当前目录下的test目录下
15.grep命令:文本搜索
grep命令是很强大的文本搜索工具,grep允许对文本文件进行模式查找。
其一般格式为:grep [参数] ‘搜索内容‘ 文件名
grep -v 显示不包含匹配文本的所有行(相当于求反)
grep -n 显示匹配行及行号
grep -i 忽略大小写
示例:查找5
grep搜索内容可以是正则表达式
^ 行首,grep -n ‘m^’ 1.txt 搜索以m开头的行
$ 行尾,grep -n ‘m$’ 1.txt 搜索以m结束的行
[] 匹配[]里中一系列字符中的一个
. 匹配一个非换行符的字符
示例:
16.ln命令:建立链接文件
软链接:软链接不占用磁盘空间,源文件删除则软链接失效
硬链接:硬链接只能链接普通文件,不能链接目录
示例:
以上即是Linux中简单的一些命令操作,本文会持续更新~~