目录
目录
一.Linux 目录结构
1.1 Linux目录与Windows目录的区别
一种不同是体现在目录与存储介质(磁盘,内存,DVD 等)的关系上,以往的 Windows 一直是以存储介质为主的,主要以盘符(C 盘,D 盘...)及分区来实现文件管理,然后之下才是目录,目录就显得不是那么重要,除系统文件之外的用户文件放在任何地方任何目录也是没有多大关系。所以通常 Windows 在使用一段时间后,磁盘上面的文件目录会显得杂乱无章(少数善于整理的用户除外吧)。
然而 UNIX/Linux 恰好相反,UNIX 是以目录为主的,Linux 也继承了这一优良特性。 Linux 是以树形目录结构的形式来构建整个系统的,可以理解为树形目录是一个用户可操作系统的骨架。虽然本质上无论是目录结构还是操作系统内核都是存储在磁盘上的,但从逻辑上来说 Linux 的磁盘是“挂在”(挂载在)目录上的,每一个目录不仅能使用本地磁盘分区的文件系统,也可以使用网络上的文件系统。举例来说,可以利用网络文件系统(Network File System,NFS)服务器载入某特定目录等。
1.2 FHS 标准
也即Filesystem Hierarchy Standard 中文:文件系统层次结构标准
因为利用 Linux 来开发产品或 distribution 的团队实在太多了,如果每个人都用自己的想法来配置文件放置的目录,那么将可能造成很多管理上的困扰。所以,后来就有了 Filesystem Hierarchy Standard(FHS)标准的出炉了。
根据 FHS 的官方文件指出,其主要目的是希望让用户可以了解到数据通常放置于哪个目录下。也就是说,FHS 的重点在于规范每个特定的目录下应该要放置什么样子的数据而已
参考链接https://www.cnblogs.com/woider/p/6618295.html
Linux 标准目录结构 FHS - woider - 博客园 (cnblogs.com)
bin | 存放二进制可执行命令 |
boot | 用来启动系统 |
sbin | (super bin),root用户可执行的二进制 文件 |
etc | 重要的配置目录,比如下载的软件,配置文件默认放在这 |
home | 每多一个用户,对应的home下就会多一个文件夹 cd或者cd ~ 命令就会跳转到当前用户的主目录 |
root | 超级用户目录 |
dev | 设备文件 |
lib | 运行库的文件 |
media | 可移除的媒体的挂载点 |
mnt | 挂载安装临时文件的挂载点 |
usr | 共享资源 |
1.3 可以试试这个命令玩噢(Ctrl+ c 停止)
tree /
没安装的用命令安装
sudo apt-get update
sudo apt-get install tree
1.4 目录路径
cd
命令切换目录:
cd ./
表示当前目录,cd ../
表示上一级目录cd -
/ 表示上一次所在目录cd ~
/ 通常表示当前用户的home
目录
pwd
命令获取当前所在路径(绝对路径)
cd ~ 回家
cd ~
1.5 /etc和/etc/的区别?
对于文件夹来说没区别,后面带/主要是用来区分文件夹和文件
看出来了莫。带 / 的是文件夹
1.6 通配符(常用)
* 任意 | 例 : Is*.conf |
?单个字符 | 例 : Is mot? |
[]括号里面可选一个 | 例 : ls mke[0-9][a-z]s.conf |
{}多个 | 例: ls{*.conf,*.cfg} |
二.Linux命令基本结构
- command options arguments
怎么做 对谁做
2.1举例
2.1.1 例1:以管理员身份删除所有的文件(勿实践)
rm -rf /*
- rm : 删除文件
- -r : 递归
- f : 强制删除
- / : 根目录
2.1.2例2:查看etc目录下所有的文件,包括隐藏文件
ls -a /etc
2.2 常用快捷键
第4节 kali Linux系统常用快捷键及设置方式_Fighting_hawk的博客-CSDN博客_kali终端快捷键
Kali Linux 快捷键大全_m0_61020668的博客-CSDN博客_kali快捷键
三.帮助命令
man ps
四. 文件基本操作
新建、复制、删除、移动文件与文件重命名、查看文件、查看文件类型、编辑文件。
4.1新建文件和目录
4.1.1使用touch命令 新建文件
创建名为 test 的空白文件,因为在其它目录没有权限,所以需要先 cd ~切换回 Home 目录:
cd ~
touch test
注:若touch已存在的文件,则会重新更改文件夹时间戳
4.1.2 使用mkdir命令新建目录(文件夹)
mkdir mytest
使用 -p
参数,同时创建多级(父)目录(如果不存在该父目录)
mkdir -p father/son/grandson/
4.2权限
- drwxrwxrw-
- d:第一个字母。代表是文件还是路径,
- -代表文件,d代表路径
- rwx:所有者
- rwx:用户组
- rw:其他人
4.2.1分值约定
- r = 4 读
- w = 2 写
- x = 1 执行
4.2.2 按数字改权限
chmod 777 tudou
4.2.3 +-改权限
chmod -x tudou
chmod +x tudou
4.3 复制(做备份)
4.3.1 cp命令复制文件
cp + 文件夹 + 目录
cp tudou father/son/grandson
4.3.2 cp命令复制目录
cp命令 + -r
或者 -R
参数,否则报错
cp -r father family
4.4 删除
4.4.1 rm命令删除文件
rm tudou
如果文件有只读权限可以 rm -f 强行删除
rm -f tudou
4.4.2 删除目录
跟复制一样也需要加-r或-R参数
rm -r family
强行删除
rm -rf family
4.5 移动文件与文件重命名
4.5.1 mv命令移动/改名
mv + 源目录文件 + 目的目录
mkdir bigtudou
touch smalltd
mv smalltd bigtudou
4.5.2 mv重命名文件
mv + 旧的文件名 + 新的文件名
mv bigtudou douya
4.5.3 批量重命名
rename 命令的安装
sudo apt-get install rename
cd ~
使用通配符批量创建 5 个文件:
touch file{1..5}.txt
批量将这 5 个后缀为 .txt 的文本文件重命名为以 .c 为后缀的文件:
rename 's/\.txt/\.c/' *.txt
批量将这 5 个文件,文件名和后缀改为大写:
rename 'y/a-z/A-Z/' *.c
4.6 查看/查找文件
4.6.1 ls/ll 查看文件列表
- ls ——list,把文件列表列出来,只有文件名或路径名
- ll —— 更详细,能看文件的权限,用户所属组,大小,修改时间
- cd ——切换工作路径 cd /home 想去哪里去哪里
4.6.2 find指定目录查找文件
- find / -name "要匹配的内容"
find / -name "my.ini"
- 查找关键词并写入新的文件2.txt
find / -name "my.ini">2.txt
- >>追加写入,>是覆盖写入
4.6.3 grep 根据文本内容查找
grep -i bing
4.6.4 cat命令查看
- cat ——拼接,输出内容
先给smalltd文件写点东西,不然cat命令会报错
echo "hi" >> smalltd
cat smalltd
- cat -n 显示行数
cat -n smalltd
- 再写一行
echo "hello" >> smalltd
- nl命令,比cat -n更专业
-b a | 同“cat -n"无论是否为空行,都列出行号 |
-b t | 默认,只列出非空行的编号 |
-n ln | 最左端显示 |
-n rn | 不加0,最右端显示 |
-n rz | 加0,最右端显示 |
-w | 行号字段占用的位数,默认6位 |
4.6.5 more(不用)和less分页查看
- 基于man手册
- less命令:
- enter 流动一行
- space 翻页(一屏)
- Ctrl+F向下滚一屏
- b 往回翻
- pageup
- pagedown
less passwd
4.6.6 head和tail
- head 只看头几行,tail 只看尾几行 ,默认为10行
- tail -f 实时读取
tail /etc/passwd
tail -n 1 /etc/passwd #只看一行
4.7查看文件类型
4.7.1 用file命令查看文件类型
file /bin/ls
若新建一个.txt文件,直接查看,会显示empty
因为Linux中文件类型不根据后缀判断,输入内容后才显示文件类型
touch tudou.txt
file tudou.txt
提示:tudou:empty
4.8 文件压缩及解压缩
- 下载:wget + 网址
- 产生一个文件 例如 1.text
- 解压;tar -xzvf 1.text
- 打包: tar -cvf +打包后的名字 +被打包的文件/文件夹
4.9 编辑文件内容
4.9.1vi/vim编辑文本内容
vi 和vim 作用类似,但vim在vi的基础上演化而来,更高级一点
- vim+文本文件名——>进入命令模式
- shift + G 跳到结尾
- /要查找的内容 ->查找某个关键词(n,下一处)
- :wq 保存退出
- :1 回到第一行
- dd 删除一行
- :q! 放弃修改并退出
- > 输出重定向,清空
- | 管道符,在前一个命令的输出结果中接着操作
五.网络
ping | 测试网络连通性 |
ifconfig | 查看网络 |
telnet | 远程连接 |
wget | 下载 |
netstat | 查看网络状态 |
六.系统状态
df | 查看磁盘使用情况 |
top | 查看系统资源使用情况 |
ps | 查看进程状态 |
kill | 杀死进程 |
free | 查看系统内存 |
date | 查看系统时间 |
6.1查看操作系统版本
cat /proc/version
uname-a
lsb_release -a