Linux文件管理

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目录)

要搞清楚绝对路劲和相对路径的区别

.../ .../ .../ 表示上一级的上一级的上一级的目录

相关推荐
danplus5 分钟前
node发送邮件:如何实现Node.js发信功能?
服务器·node.js·外贸开发信·邮件群发·蜂邮edm邮件营销·邮件接口·营销邮件
神即道 道法自然 如来6 分钟前
Jenkins怎么设置每日自动执行构建任务?
运维·jenkins
小黑爱编程13 分钟前
【LInux】HTTPS是如何实现安全传输的
linux·安全·https
BeyondESH18 分钟前
Linux线程同步—竞态条件和互斥锁(C语言)
linux·服务器·c++
wn53120 分钟前
【Go - 类型断言】
服务器·开发语言·后端·golang
hanniuniu1321 分钟前
详细解读,F5服务器负载均衡的技术优势
运维·服务器·负载均衡
鱼饼6号34 分钟前
Prometheus 上手指南
linux·运维·centos·prometheus
Asher Gu40 分钟前
Linux系统编程入门 | 模拟实现 ls -l 命令
linux
PatrickYao04221 小时前
记一次安装discuz时遇到的错误
服务器
c无序1 小时前
【Linux进程控制】进程程序替换
linux