Linux目录树结构
整个Linux系统最重要的地方就是在于目录树架构,所谓的目录树架构就是以根目录为主, 然后向下呈现分支状的目录结构的一种档案架构。我们可以先通过下面这幅图来直观的认识一下Linux的目录结构。

主要目录的简介
a) 根目录(/)
根目录是整个系统最重要的一个目录,因为所有的目录都是由根目录衍生出来的。只有root用户才具有在该目录下写权限。

b) /bin目录 – 用户二进制文件
包含二进制的可执行文件,你需要的常见的Linux命令都位于此目录下。

c) /sbin目录 – 系统二进制文件
这个目录下的命令通常由系统管理员使用, 对系统进行维护。

d) /etc– 配置文件
包含所有程序所需要的配置文件,也包含用于启动/停止单个程序的起动和关闭shell脚本。

e) /dev-设备文件
包含设备文件,包括终端设备、USB或连接到系统的任何设备,如网卡等。

f) /proc-进程信息文件
这是一个虚拟的文件系统,包含有关正在运行的进程信息。
g) /var-变量文件
包含目录下内容可变的文件,例如,系统日志文件(/var/log);包和数据库文件(/var/lib);电子邮件(/var/mail);打印队列(/var/spool);锁文件(/var/lock);多次重新启动需要的临时文件(/var/tmp)。
h) /tem-临时文件
包含系统和用户创建的临时文件,当系统重启时,文件消失。
i) /usr-用户程序
包含二进制文件、库文件、文档和二级程序的源代码。
/usr/bin中包含用户程序的二进制文件。如果你在/bin中找不到用户二进制文件,到/usr/bin目录看看。例如:at、awk、cc、less、scp。
/usr/sbin中包含系统管理员的二进制文件。如果你在/sbin中找不到系统二进制文件,到/usr/sbin目录看看。例如:atd、cron、sshd、useradd、userdel。
/usr/lib中包含了/usr/bin和/usr/sbin用到的库。
/usr/local中包含了从源安装的用户程序。例如,当你从源安装Apache,它会在/usr/local/apache2中
j) /home -HOME目录
包含所有用户的个人档案,Linux是多用户的系统,所以用该目录保存各用户的信息。
k) /boot -引导加载程序
包含引导加载程序相关的文件。
l) /lib -系统库
包含支持位于/lib和/sbin下的二进制文件的库文件。
m) /opt -可选的附加应用程序
n) /mnt -挂载目录
Linux命令type,file,stat,cat区别
- type 查看命令类型,例如该命令是alias还是内置命令,或某个文件或关键字,eg: type ls;type cd;type -a ls
- file 查看文件类型,例如文本文件,二进制文件,管道文件,设备文件,链接文件等。eg: file /etc/hosts
- stat 查看文件的属性,例如文件的名称,大小,权限,时间(atime,ctime,mtime).eg:stat /etc/hosts
- cat 查看文件的内容 eg:cat /etc/hosts

ln命令
用途:用于创建链接文件
语法: ln [-s] [源文件/目录] [目标文件] (-s创建的是软连接)
软链接:
- 软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
- 软链接可以 跨文件系统 ,硬链接不可以
- 软链接可以对一个不存在的文件名进行链接
- 软链接可以对目录进行链接
硬链接:
- 硬链接,以文件副本的形式存在。但不占用实际空间。
- 不允许给目录创建硬链接
- 硬链接只有在同一个文件系统中才能创建
软链接:不可以删除源文件,删除源文件导致链接文件找不到,出现文件红色闪烁
硬链接:可以删除源文件,链接文件可以正常打开
linux下如何完全删除用户
若使用userdel hyxy1 命令删除该用户时,并不能删除该用户的所有信息,只是删除
了除etc/passwd、/etc/shadow、/etc/group/、/etc/gshadow四个文件里的该账户和组的信息。
默认情况下创建一个用户账号,会创建一个家目录和一个用户邮箱(在/var/spool/mail目录以用户名命名)
下次再创建用户时,就会出现:

上图报错,所以当你再次创建该用户账号的时候会报错,这就说明与该用户相关的文件或目录之前并没有删除完全。
正确删除用户
[root@wys home]# userdel -r hyxy1

printf命令
显示打印数据,具有格式化等强大功能
printf [format] [文本1] [文本2] ..
常用格式替换符
|
%s |
字符串 |
|
%f |
浮点格式 |
|
%c |
ASCII字符,即显示对应参数的第一个字符 |
|
%d,%i |
十进制整数 |
|
%o |
八进制值 |
|
%u |
不带正负号的十进制值 |
|
%x |
十六进制值(a-f) |
|
%X |
十六进制值(A-F) |
|
%% |
表示%本身 |
常用转义字符
|
\a |
警告字符,通常为ASCII的BEL字符 |
|
\b |
后退 |
|
\f |
换页 |
|
\n |
换行 |
|
\r |
回车 |
|
\t |
水平制表符 |
|
\v |
垂直制表符 |
|
\\ |
表示\本身 |
使用示例

Linux中的位置参数变量
主要是向脚本中传递数据,变量名不能自定义,变量作用是固定的
$n
$0代表命令本身,$1-9代表接受的第1-9个参数,10以上需要用{}括起来,比如${10}代表接收的第10个参数
$*
代表接收所有的参数,将所有参数看作一个整体
$@
代表接收的所有参数,将每个参数区别对待
$#
代表接收的参数个数




深入理解Linux目录结构与常用命令
本文介绍了Linux系统的目录树结构,包括根目录、/bin、/sbin、/etc、/dev等重要目录的用途。同时讲解了几个常用的Linux命令,如type、file、stat和cat的区别以及ln命令的使用。还提到了删除用户和printf命令的用法,以及在脚本中如何处理位置参数变量。

被折叠的 条评论
为什么被折叠?



