WINDOWS/LINUX目录对比
Windows: 以多根的方式组织文件 C:\ D:\ E:
Linux: 以单根的方式组织文件 / (根目录)
Linux目录简介
/目录结构: FSH (Filesystem Hierarchy Standard)
[root@localhost ~]# ls /
bin dev lib media net root srv usr
boot etc lib64 misc opt sbin sys var
cgroup home lost+found mnt proc selinux tmp
jasmine@lhl:/$ ll
总计 2097240
drwxr-xr-x 20 root root 4096 6月 18 21:48 ./
drwxr-xr-x 20 root root 4096 6月 18 21:48 …/
lrwxrwxrwx 1 root root 7 6月 18 21:46 bin -> usr/bin/
drwxr-xr-x 4 root root 4096 6月 19 07:16 boot/
drwxrwxr-x 2 root root 4096 6月 18 21:48 cdrom/
drwxr-xr-x 20 root root 4840 6月 21 17:48 dev/
drwxr-xr-x 129 root root 12288 6月 22 11:35 etc/
drwxr-xr-x 3 root root 4096 6月 18 21:49 home/
lrwxrwxrwx 1 root root 7 6月 18 21:46 lib -> usr/lib/
lrwxrwxrwx 1 root root 9 6月 18 21:46 lib32 -> usr/lib32/
lrwxrwxrwx 1 root root 9 6月 18 21:46 lib64 -> usr/lib64/
lrwxrwxrwx 1 root root 10 6月 18 21:46 libx32 -> usr/libx32/
drwx------ 2 root root 16384 6月 18 21:46 lost+found/
drwxr-xr-x 3 root root 4096 6月 19 05:52 media/
drwxr-xr-x 2 root root 4096 2月 23 11:57 mnt/
drwxr-xr-x 2 root root 4096 2月 23 11:57 opt/
dr-xr-xr-x 286 root root 0 6月 18 22:36 proc/
drwx------ 6 root root 4096 6月 18 22:14 root/
drwxr-xr-x 37 root root 1080 6月 22 23:41 run/
lrwxrwxrwx 1 root root 8 6月 18 21:46 sbin -> usr/sbin/
drwxr-xr-x 13 root root 4096 6月 19 09:55 snap/
drwxr-xr-x 2 root root 4096 2月 23 11:57 srv/
-rw------- 1 root root 2147483648 6月 18 21:46 swapfile
dr-xr-xr-x 13 root root 0 6月 18 22:36 sys/
drwxrwxrwt 21 root root 4096 6月 22 23:34 tmp/
drwxr-xr-x 14 root root 4096 2月 23 11:57 usr/
drwxr-xr-x 14 root root 4096 2月 23 12:02 var/
目录功能
常用目录
-
root root用户的HOM(就是超管目录)
-
home 存储普通用户家目录 (普通用户不能访问超管目录)
-
etc 配置文件(系统相关如网络/etc/sysconfig/network)
-
boot 存放的系统启动相关的文件,例如kernel,grub(引导装载程序),没事不要去删除它
-
var 存放的是一些变化文件,比如数据库,日志,邮件…是一个临时目录,如果系统出bug了,可以查看日志,该文件下的/log/目录下存储了主log文件。
不常用目录 可以了解
- bin 普通用户使用的命令 /bin/ls, /bin/date
- sbin 管理员使用的命令 /sbin/service
- dev 设备文件 /dev/sda,/dev/sda1
- tmp 临时文件(全局可写:进程产生的临时文件)
- proc 虚拟的文件系统,反映出来的是内核,进程信息或实时状态 ,硬件的状态
- usr 系统文件,相当于C:\Windows
- /usr/local 软件安装的目录,相当于C:\Program
- lib 库文件Glibc
- lib64 库文件Glibc
- lost+found fsck修复时,存储没有链接的文件或目录,系统自带的,不是常用的
设备(主要指存储设备)挂载目录
- media 移动设备默认的挂载点
- mnt 手工挂载设备的挂载点
文件管理命令
创建/修改文件
touch
Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
使用方法:touch 文件名.后缀
可以一起创建多个文件:touch 文件1 文件2 文件3 文件4 文件5
vim
创建并编辑文件,然后保存退出。
vim命令也可以修改文件,也是同样的操作。
使用方法:
1.vim 文件名.文件后缀:此命令会创建 文件名.文件后缀 并且进入编辑模式
2.按下i,进入插入模式,输入文件内容
3.当文件内容输入完成时,按下Esc键,再输入 :wq ,按下enter即可。
这三步将创建 文件.文件后缀、编辑文件.文件后缀、保存并退出。
创建目录
mkdir 空格 路径和目录名
举例:
mkdir aaa(就会在当前目录下创建aaa文件夹)
mkdir aaa bbb ccc(会在当前目录下创建aaa,bbb,ccc文件夹)
选项:
-p:副系目录, mkdir -p aaa/bbb/ccc(如果直接使用 mkdir aaa/bbb/ccc,会创建失败,因为原来没有aaa目录bbb目录)
复制文件/文件夹
复制文件:cp 文件名.文件后缀 目录/,如cp question.cpp …/
复制文件目录及目录下文件:cp -r 文件目录1 文件目录2,如cp -r data …/
移动文件/文件夹
linux中的移动使用mv指令
移动文件到目录:
mv 文件目录1/文件 文件目录2/:如mv test.cpp src/
移动文件到目录并修改文件名:
mv 文件目录1/文件 文件目录2/文件:如mv ./src/test.cpp ./main.cpp
移动文件目录1下所有文件到文件目录2:
mv 文件目录1/ 文件目录2/:如mv src/ bin/
移动文件目录1下指定后缀文件到文件目录2:
mv 文件目录1/.cpp 文件目录2:如 mv src/.cpp bin/
移动文件夹到文件目录2:
mv 文件目录1 文件目录2/
同时移动多个文件:
mv 文件1 文件2 文件3 目标目录
删除文件/文件夹
删除文件夹:rm -rf /root/logs/game
删除文件:rm -f /root/logs/game/nohup.log(这里使用-rf也是可以的)
同时删除多个文件:rm -rf 文件1 文件2 …
查看文件内容
cat全部
cat /root/file1.txt
more翻页(先显示一页,按一下回车就到下一页)
more /root/file1.txt
head头部(就是文件上面的内容,前面的10行,可以设置选项参数)
head /root/file1.txt
head test.txt -3(设置显示3行)
tail尾部(只显示文件尾部的内容,默认显示10行,可以设置选项参数)
tail /root/file1.txt
tail test.txt -3(设置显示尾部3行)
grep过滤关键字(会显示出有关键字的行)
针对文件内容进行过滤
grep 关键字 文件名
grep ‘abc’ /root/file1.txt
前提是文件中要有abc哦
文本编辑器vi vim
可视模式
可视模式,按V进入,小v光标自己选取,大V直接选取一行,YYp复制粘贴即可。
命令模式
光标定位
hjkL //上下左右
0 $ //行首行尾
gg G(Shift+g) //页首页尾
3G 进入第三行,可以设置为其他数字
/string (n N 可以循环的) //查找字符,按n键选下一个(重要)
文本编辑
文本编辑
yy 复制
dd 删除
p 粘贴
u undo撤销
进入其它模式
a 进入插入模式(光标前插入)
i 进入插入模式 (光标前插入)
o 进入插入模式(另起一行插入)
A 进入插入模式 (光标后插入)
: 进入末行模式(扩展命令模式)
v 进入可视模式
ESC 返回命令模式
扩展命令模式
保存退出
:w 保存
:q 退出
:wq 保存并退出
查找替换
:范围 s/原内容/新内容/全局
:1,5 s/root/qianfeng/g 从1-5行的root 替换为qianfeng
另存为
:w file9.txt 另存为 file9.txt
:set nu 设置行号
:set nonu 取消设置行号
:set list 显示控制字符
改变目录
cd 文件路径
cd ~(j就是去home目录)
要搞清楚绝对路劲和相对路径的区别
…/ …/ …/ 表示上一级的上一级的上一级的目录