文章目录
- 文件目录系统
- 相对路径
- 绝对路径
- 命令解析器
- 文件管理
文件目录系统
-
bin: 二进制文件目录,存储可执行文件
-
dev:设备目录,所有的硬件都会抽象成文件存储,比如鼠标键盘
-
home:存储普通用户的家目录
-
lib:存储动态库和静态库
-
mnt:临时挂载点目录,比如临时U盘
-
proc:内存使用的一个映射目录,给系统使用的
-
run:运行中给系统使用的
-
tmp:临时目录,存放临时数据,重启电脑会删除
-
boot:存储开机相关的设置
-
root:root用户的家目录
-
opt:第三方软件的安装目录
-
var:存储了系统使用的一些经常发生变化的目录,比如日志文件
-
lost+found:一般是空的,非正常关机和系统崩溃会存储临时文件,用来恢复的目录
-
snap:
-
sys
-
etc:存储操作系统和软件的配置文件
-
srv:
-
cdrom
-
media:和dev完全相同,可以选择用来挂载一些长期的设备
-
sbin:root用户使用的二进制可执行程序目录
-
usr:系统资源目录
- usr/include:包含标准头文件
- usr/local:安装第三方软件
- usr/src:源文件
相对路径
- ./:代表当前目录也可以用**.**表示
- …/:代表当前目录的上一层目录 可以用**…**表示
绝对路径
起始目录是根目录 /
命令解析器
- 命令提示行
liyb@lyb:~$
- liyb:用户名
- @:at 在
- lyb:主机名
- ~:当前用户的家目录,等于/home/l1yb
- $: 当前用户是普通用户
- #:当前用户是root用户
- 命令解析器
unix 系统使用的是shell
linux 系统重写了shell,成为了bash
- 命令行快捷键
ctrl + a 光标移动到行首
ctrl + e 光标移动到行尾
ctrl + u 删除光标前面的字符串
ctrl + k 删除光标后面的字符串
文件管理
- cd
- cd - :快速切换到上一次进入的目录
- ls
参数 | 含义 |
---|---|
-a | 显示隐藏文件 |
-l | 显示文件详细信息 |
-F | 如果是文件,会在文件名后面加/ |
-h | 人性化,文件大小显示为K,M,G |
-laF | ubuntu中等价于ll(参数之间可以一起使用) |
- 文件类型
# 显示文件的详细信息
robin@OS:~$ ls -l
total 204
-rw-rw-r-- 1 robin robin 268 Mar 22 17:32 a.c
drwxrwxr-x 2 robin robin 4096 Aug 4 2019 config
-rw-r--r-- 1 robin robin 129487 Dec 25 11:28 english.txt
drwxrwxr-x 4 robin robin 4096 Jan 15 17:48 libevent
drwxrwxr-x 17 robin robin 4096 Apr 13 22:42 Linux
drwxrwxr-x 8 robin robin 4096 Feb 5 16:57 luffy
-rw-r--r-- 1 robin robin 2223 Mar 2 14:39 main.cpp
-rw-rw-r-- 1 robin robin 2167 Dec 1 22:41 mysql_test.c
drwxrwxr-x 9 robin robin 4096 Mar 26 19:19 network
-rw-r--r-- 1 robin robin 1406 Mar 2 20:18 occi.cpp
drwxrwxr-x 3 robin robin 4096 Oct 30 12:09 oradiag_robin
drwxrwxr-x 11 robin robin 4096 Mar 26 09:40 package
drwxrwxr-x 2 robin robin 4096 Dec 29 17:11 process
drwxrwxr-x 17 robin robin 4096 Mar 29 22:31 projects
-rw-r--r-- 1 robin robin 1816 Jan 6 09:37 sidtime.c
drwxrwxr-x 2 robin robin 4096 Mar 22 11:31 socket
-rw-r--r-- 1 robin robin 583 Oct 18 17:21 test.c
-rw-r--r-- 1 robin robin 2015 Mar 1 17:05 test.cpp
-rw-rw-r-- 1 robin robin 2218 Dec 2 17:02 test_mysql.c
drwxrwxr-x 5 robin robin 4096 Jan 13 17:35 udp# 文件详细信息介绍d rwx rwx r-x 5 robin robin 4096 Jan 13 17:35 udp| | | | | | | | | |
文件 文件所 文件所 其他人 硬链接 文件 文件 文件大小 文件修改时间 文件名
类型 有者权限 属组权限 权限 计数 所有者 所属组 作者: 苏丙榅
链接: https://subingwen.cn/linux/file-commands/#2-2-%E6%98%BE%E7%A4%BA%E6%96%87%E4%BB%B6%E8%AF%A6%E7%BB%86%E4%BF%A1%E6%81%AF
来源: 爱编程的大丙
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
- 创建删除目录
- mkdir 创建目录
- 创建单层目录
- mkdir /a/b/c -p 创建多层目录
- rmdir 删除目录(没啥用)
- 只能删除单层目录
- rm 删除
- rm dirname -r 删除目录包括子目录(-r 表示递归)
- -i 删除给提示
- -f 强制删除且不提示
- i f一起用的时候,谁在后面谁生效
- cp 命令
# 文件拷贝
# cp 要拷贝的文件 目标文件(没有的话会创建,已经存在的话会被覆盖)# 目录拷贝
# cp dir1 dir2 -r 有子目录的话一定要加-r递归
#这种拷贝会把目录名一起拷贝进去#如果只要目录里的内容的话
cp dir1/* dir2 -r
- mv
# 文件移动 目标文件夹必须存在
mv a b c target/# 文件改名 目标文件必须不存在
mv tom.txt jerry.txt
mv temp/ tmp/# 文件覆盖 文件存在且不是目录
mv file1 file2 # file1会消失,覆盖file2
- 查看文件内容
-
cat + filename
-
more + filename
回车 : 向下一行
空格:向下一页
b:上一页
q:退出
-
less + filename
-
head -行数 filename 前多少行
-
tail -行数 filename 后多少行
- 链接的创建
- 软链接
# ln -s 源文件路径 软链接文件名字
ln -s a.txt a.lnk # 移动以后失效
# 想要移动不失效需要使用绝对路径
ln -s /home/l1yb/dir/a.txt aa.lnk
- 硬链接
# ln 源文件 硬链接文件名字
ln a.txt b.txt # 相当于起别名,他们的引用计数一样,指向同一块磁盘空间
目录不允许创建硬链接,文件不会发生拷贝,只是起别名
- 修改文件权限chmod
针对文件所有者、文件所有组、其他人
- 文字设定法
# chmod who [+][-][=] mod filenamewho u : user -> 文件所有者g : group -> 文件所属组o : other -> 其他人a : all -> 以上所有人- 对权限的操作+:添加权限-:去除权限=:权限的覆盖- mod:权限r:读w:写x:执行权限-:无权限
chmod a=rwx a.txt
chmod u+x a.txt
chmod go-w a.txt
- 数字设定法
# 语法格式: chmod [+|-|=] mod 文件名- 对权限的操作:+: 添加权限-: 去除权限=: 权限的覆盖, 等号可以不写- mod: 权限描述, 所有权限都放开是 7- 4: read, r- 2: write, w- 1: execute , x- 0: 没有权限chmod 777 b.txt # 所有人的权限覆盖为7
chmod -200 b.txt #去除文件所有者的写权限
-
修改文件所有者chown
-
修改文件所有组chgrp
-
tree
安装:
sudo apt install tree
tree -L 1 # 显示一层
tree -L 2 # 显示两层
tree -L 1 dir/ # 指定目录显示一层
-
pwd 显示当前目录
-
touch 创建新文件
-
which 可执行程序在哪个目录中
-
重定向命令
关键符 > 或者 >>
如果 > 后面的文件不存在,会创建
如果存在,就会覆盖
>>
不会覆盖,表示追加,新的一行