linux
- windows 的环境变量应该也是使用 regedit 实现的
- linux 的顶层文件夹 /
linux 系统目录层级结构
- swap 交换区,windows系统也有,其实就是当内存不够的时候用来置换的虚拟内存
具体系统目录结构
/
├── bin
├── boot
├── dev
├── etc
├── home
│ ├── user1
│ ├── user2
├── lib
├── lib64
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin
├── srv
├── sys
├── tmp
├── usr
│ ├── bin
│ ├── include
│ ├── lib
│ ├── local
│ ├── sbin
│ └── share
└── var
├── cache
├── log
└── tmp
简单说明
- bin:包含系统中的基本命令和工具的目录。
- etc:包含系统配置文件的目录,如网络配置、用户账户等。
- home:存储用户的主目录,每个用户都有一个独立的子目录。(一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限)
- tmp:用于存放临时文件的目录。(一般而言,重启之后都会删除 tmp 里面的文件,但是具体和配置有关)
- usr:包含用户可执行程序、库、文档等的目录。
- var:用于存放经常变化的文件的目录,如日志文件、缓存文件等。
- boot:包含引导加载程序和内核映像文件的目录。
- dev:包含设备文件的目录,用于表示系统硬件设备。
- lib和lib64:包含系统共享库文件的目录。
- media:用于挂载外部设备(如USB驱动器)的目录。
- mnt:用于挂载临时文件系统的目录。
- opt:用于存放可选的软件包的目录。
- proc:包含系统进程的虚拟文件系统。
- root:超级用户 root 的主目录。
- run:用于存储运行时数据的临时文件系统目录。
- sbin:包含系统管理员命令(超级用户命令)的目录。
- srv:包含服务数据的目录。
- sys:包含/sys虚拟文件系统,提供了对内核和硬件的访问。
linux 命令
~
: 表示当前 /home/xxx_user*
: 通配符, 删除等的时候可以使用.
: 表示当前文件夹..
: 表示上一级文件夹>
: 覆盖写>>
: 追加|
: 管道符,用来将前一个的输出作为后一个的输入- 反引号(``): 用来标注内容为需要解释的内容(类似 {} ${} 等)
- 因为 linux 是多用户系统,因此对于每一个用户,涉及 w 的操作仅仅能在
/home/current_user/
下面进行操作,否则需要管理员权限
命令语法
command [options] [params]
command
表示命令本身options
各种选项,用来控制命令的行为细分,可以组合(组合的时候可以单独使用,也可以联合使用,起着一样的效果)params
表示参数,其实就是操作对象相关的
一、基础命令
- 下面的展开格式按照
ls
的展开
-
ls
- list(英文意思)
ls [-l -h -a] [dir_path]
(用法)- a: all, h: human-readable, l: list(一行一行展示)[每个option的英文以及说明]
- 用来展开 dir_path 下面的文件,如果没有 dir_path 就是展开当前文件夹的(命令的作用)
-
cd
- change directory
cd dir_path
- 用来进入 dir_path,没有 dir_path 就是进入
~
-
pwd
- print work directory
- 用来当前的工作目录
-
mkdir
- make directory
mkdir [-p] dir_path
- p: parent 使用这个选项的时候表示父文件夹不存在就创建
- 用来展开 dir_path 下面的文件,如果没有 dir_path 就是展开当前文件夹的
-
touch
touch file_name
- 用来创建一个新的叫做 file_name 的文件
-
cat
- concatenate(连接)
cat file_name
- 用来连接文件 file_name 并且打印在标准输出
-
more
more file_name
- 翻页式查看文件的内容(q: quit)
-
cp
- copy
cp [-r] [source des]
- r: recurse(表示递归,意思就是递归复制,复制文件夹的时候使用)
- 用来将 source 的文件复制到 des
-
mv
- move
move source des
- 用来将文件 source 移动到 des[这个命令可以用来改名字]
-
rm
- remove
rm [-r -f] [param1 param2 param3 ... ]
- r: recurse(表示递归), f: force(表示强制,管理员进行删除的时候会有相应的提示)
- 用来将 param 的文件全部删除[可以和通配符一起使用](命令行linux都是不提供来吉祥这个功能的,到那时有些桌面linux操作系统提供了垃圾箱这个功能)
-
which
which command
- 用来打印 command 这个命令的位置
-
find
find base_path [-name -size] 'des'
- 当选项是 name 的时候,就按照名字来查找(可以和通配符一起使用),类似和windows的文件夹搜索是一样的
- des: 就是一个文件匹配的字符串
- 当选项是 size 的时候,表示的是查找文件的大小在 des 指定的范围里面的文件
- des: k M G
find / -size +10k
find / -size -10k
-
grep
- global regular expression print
grep [-n] key file_name
- n: num(加上 -n 之后表示显示行号)
- 用于在文件中搜索指定模式的文本行,并将包含匹配模式的行打印到标准输出设备。
-
wc
- word count
wc [-c -m -l -w] file_name
- c: char , m: 字符, l: line, w: word
- 用来统计 字节/字符/line/单词 的数量
-
echo
echo output_content
- 用来输出 content 比较复杂的可以实用 "" 包围起来,增加可读性
-
tail
tail [-f -n NUM] file_name
- f: follow(表示持续跟踪), n: num(表示需要展示的行数量,使用NUM具体指出)
- 用来持续跟踪 file_name 的尾部的信息
二、用户和权限/资源/运维
-
su
- switch user
su [-] [user_name]
- -: 可选,用来表示在切换用户后时候加载环境变量
- su 是用来切换用户的系统命令(其他用户切换到root用户,需要使用密码)
-
sudo
- super user do
- 表示使用超级管理员的权限来执行命令(一般需要输入密码,但是可以自己配置不输入[/etc/sudoers])
-
exit
- 可以使用 exit 或者 ctrl + D 来推出当前登录的用户
-
groupadd
groupadd group_name
- 创建用户组
-
groupdel
groupdel group_name
- 删除用户组
-
useradd
useradd [-g -d] user_name
- option
- g: 用来指定创建用户时候的用户组,没有指定 g 的话,就会创建一个同名的 group,再加入用户,
- d: 指定用户的HOME路径,不指定,home目录默认在 /home/user_name
- 用户来创建用户
-
userdel
userdel [-r] user_name
- r: 使用 r 表示同时删除 home 目录(应该是递归的意思)
- 用来删除用户(以及相关的信息)
-
id
id [user_name]
- 查看用户所属的分组
-
usermod
- user modify
usermod -aG group_name user_name
- 将制定用户加入指定分组
-
getent
- get entry
getent [passwd|group]
- params
- passwd: 查看当前系统中的用户
- group : 查看系统中有哪些分组
-
chmod
- change mode
chmod [-r] jurisdiction file_or_dir_name
- jurisdiction: 可以使用数字来表示,也可以使用字符串表示
- r: 表示对文件夹里面的文件进行递归操作
- 用户或者 root 对文件或者文件夹的权限进行修改
-
chown
- change own
chown [-r] [user_name][:][group_name] file_name/dir_path
- r: 表示递归
- root 修改一个文件的用户:用户组
-
top
- 用来检测系统资源的使用情况
三、压缩、解压
-
tar
tar [-z -c -x -v -f -C] param1 param2 param3 param4
- option
- z: 表示压缩成 gz 模式(没有 z 的话表示的事 tarball)
- c: 表示的事压缩
- x: 表示的事解压
- v: 表示的事解压的过程可见、
- f: des 表示要创建或者是解压的文件,必须放在 option 的最后
- C: 用来选择解压目的地
- 用来将文件解压或者是压缩 tar 或者 .gz 格式
-
zip
zip [-r] des.zip param1 param2 param3 ... paramN
- 用来将文件压缩为 des.zip 文件
-
unzip
unzip file_name [-d des_path]
- 用于将文件解压
四、环境变量
-
$
- ${环境变量名}: 用来获取相应的值,{}这个符号可以不加
-
用户环境变量
- ~/.bashrc 文件
-
系统环境变量
- /etc/profile
-
自定义环境变量
- export PATH=$PATH:need_added_path