极简记录学习Linux过程中的点滴,做一个纯粹的学习者
一、处理目录的常用命令
接下来我们就来看几个常见的处理目录的命令吧:
- ls:列出目录
- cd:切换目录
- pwd:查看当前目录
- mkdir:创建一个新的目录
- rmdir:删除一个空的目录
- cp:复制文件或者目录
- rm:移除文件或者目录
① ls (列出目录)
在Linux系统当中, ls 命令可能是最常被运行的。
- -a :全部的文件,连同隐藏档( 开头为 . 的文件) 一起列出来(常用)
- -d :仅列出目录本身,而不是列出目录内的文件数据(常用)
- -l :长数据串列出,包含文件的属性与权限等等数据(常用)
- -al:将目录下的所有文件列出来(含属性与隐藏档)
helei@ubuntu:~/work/day1$ ls -a
. .. a.out hello.c
helei@ubuntu:~/work/day1$ ls -d
.
helei@ubuntu:~/work/day1$ ls -l
total 16
-rwxrwxr-x 1 helei helei 8600 Dec 4 17:56 a.out
-rwxrwxrwx 1 helei helei 77 Dec 4 17:55 hello.c
helei@ubuntu:~/work/day1$ ls -al
total 24
drwxrwxr-x 2 helei helei 4096 Feb 1 20:14 .
drwxrwxr-x 7 helei helei 4096 Dec 18 07:09 ..
-rwxrwxr-x 1 helei helei 8600 Dec 4 17:56 a.out
-rwxrwxrwx 1 helei helei 77 Dec 4 17:55 hello.c
② pwd (显示目前所在的目录)
pwd是Print Working Directory的缩写,也就是显示目前所在目录的命令。
$ pwd
/home/helei/work
③ cd (切换目录)
cd是Change Directory的缩写,这是用来变换工作目录的命令。
- 绝对路径切换到 day1 目录:cd work/day1
$ cd work/day1
~/work/day1$ ls
a.out hello.c
- 相对路径切换到 day1 目录:cd ./day1/
~/work$ cd ./day1/
~/work/day1$
- 回到根目录:cd ~
$ cd work/day1
$ pwd
/home/helei/work/day1
$ cd ~
$ pwd
//回到家目录
/home/helei
- 回到上层目录:cd ..
$ cd work/day1
$ pwd
/home/helei/work/day1
$ cd ..
$ pwd
//回到了上层 work 目录
/home/helei/work
④ mkdir (创建新目录)
如果想要创建新的目录的话,那么就使用 mkdir (make directory)吧。
helei@ubuntu:~/work$ ls
day1 day2 day3 day4 day5
helei@ubuntu:~/work$ mkdir day6
helei@ubuntu:~/work$ ls
//可以看到新建的目录 day6
day1 day2 day3 day4 day5 day6
但是如果想要创建多级目录上面的方法就行不通了,需要使用:mkdir -p 命令
helei@ubuntu:~/work$ mkdir day7/test1/test2
//使用 mkdir 命令创建多级目录失败
mkdir: cannot create directory ‘day7/test1/test2’: No such file or directory
helei@ubuntu:~/work$ mkdir -p day7/test1/test2
helei@ubuntu:~/work$ ls
day1 day2 day3 day4 day5 day6 day7
helei@ubuntu:~/work$ cd day7
helei@ubuntu:~/work/day7$ ls
test1
⑤ rmdir (删除空的目录)
helei@ubuntu:~/work$ rmdir day7
//非空目录使用rmdir是不允许删除的哦
rmdir: failed to remove 'day7': Directory not empty
helei@ubuntu:~/work$ cd day7
helei@ubuntu:~/work/day7$ ls
test1
//先将目录下文件删除
helei@ubuntu:~/work/day7$ rmdir test1
helei@ubuntu:~/work/day7$ ls
helei@ubuntu:~/work/day7$ cd ..
helei@ubuntu:~/work$ ls
day1 day2 day3 day4 day5 day6 day7
helei@ubuntu:~/work$ rmdir day7
helei@ubuntu:~/work$ ls
//可以看到删除 day7 目录成功
day1 day2 day3 day4 day5 day6
⑥ cp (复制文件或目录)
cp 即拷贝文件和目录。
helei@ubuntu:~/work/day1$ ls
a.out hello.c
//拷贝 hello.c 文件到 haha 中
helei@ubuntu:~/work/day1$ cp hello.c haha
helei@ubuntu:~/work/day1$ la
//可以看到哈哈被创建
a.out haha hello.c
//继续查看haha文件中内容(cat命令下方有讲解)
helei@ubuntu:~/work/day1$ cat haha
#include <stdio.h>
int main(){
printf("hello world!");
return 0;
}
⑦ rm (移除文件或目录)
- -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
- -i :互动模式,在删除前会询问使用者是否动作
- -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
helei@ubuntu:~/work/day1$ rm -i haha
//删除前会询问
rm: remove regular file 'haha'? n
helei@ubuntu:~/work/day1$ ls
a.out haha hello.c
//直接删除了
helei@ubuntu:~/work/day1$ rm -f haha
helei@ubuntu:~/work/day1$ ls
a.out hello.c
//创建二级目录
helei@ubuntu:~/work/day1$ rm -r test1/test2
helei@ubuntu:~/work/day1$ ls
a.out hello.c test1
//遍历删除
helei@ubuntu:~/work/day1$ rm -r test1
helei@ubuntu:~/work/day1$ ls
a.out hello.c
⑧ mv (移动文件与目录,或修改名称)
//创建目录 human
helei@ubuntu:~/work/day1$ mkdir human
helei@ubuntu:~/work/day1$ ls
a.out girl hello.c human
//将 girl 文件移动到 human 目录
helei@ubuntu:~/work/day1$ mv girl human
helei@ubuntu:~/work/day1$ ls
a.out hello.c human
helei@ubuntu:~/work/day1$ cd human
helei@ubuntu:~/work/day1/human$ ls
girl
//将 girl 文件重命名为 boy
helei@ubuntu:~/work/day1/human$ mv girl boy
helei@ubuntu:~/work/day1/human$ ls
boy
当然也可以将文件移动到任何目录,只要你的路径正确
//将 boy 文件移动到上级目录
helei@ubuntu:~/work/day1/human$ mv boy ../
helei@ubuntu:~/work/day1/human$ ls
helei@ubuntu:~/work/day1/human$ cd ..
helei@ubuntu:~/work/day1$ ls
//可以看到 day1 目录下存在了 boy
a.out boy hello.c human
//继续操作将 boy 文件移动到 work/day2 目录中
helei@ubuntu:~/work/day1$ mv boy ../day2
helei@ubuntu:~/work/day1$ ls
//day1 目录下已经不存在 boy 文件了
a.out hello.c human
helei@ubuntu:~/work/day1$ cd ..
helei@ubuntu:~/work$ cd day2
helei@ubuntu:~/work/day2$ ls
//可以看到 boy 文件赫然在此,😁
boy hello.c hello.h hello.o Makefile min.c min.h min.o sum.c
我的室友阿黄
二、Linux 文件内容查看
Linux系统中使用以下命令来查看文件的内容(这里介绍经常使用的两种):
- cat 由第一行开始显示文件内容
- nl 显示的时候,顺道输出行号!
① cat
helei@ubuntu:~/work/day1$ cat hello.c
//直接输出内容
#include <stdio.h>
int main(){
printf("hello world!");
return 0;
}
② nl
helei@ubuntu:~/work/day1$ nl hello.c
//输出文件内容并显示行号
1 #include <stdio.h>
2 int main(){
3 printf("hello world!");
4 return 0;
5 }
看到这里的你应该是很有耐心的,真心希望能帮助你加深对 linux 命令的理解以及操作😆。
网友评论