Linux 刚面世时并没有图形界面,所有的操作全靠命令完成,如 磁盘操作、文件存取、目录操作、进程管理、文件权限 设定等
大量的 服务器维护工作 都是在 远程 通过 SSH 客户端 来完成的,并没有图形界面,所有的维护工作都需要通过命令来完成
不需要死记硬背,临时遇到,临时百度就可以
文件和目录
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | ls | list | 查看当前文件夹下的内容 -a 显示指定目录下所有子目录与文件,包括隐藏文件 -l 以列表方式显示文件的详细信息 -h 配合 -l 以人性化的方式显示文件大小 |
02 | pwd | print work directory | 查看当前所在文件夹 cd ~ 切换到当前用户的主目录(/home/用户目录) cd - 可以在最近两次工作目录之间来回切换 |
03 | cd [目录名] | change directory | 切换文件夹 |
04 | touch [文件名] | touch | 如果文件不存在,新建文件 |
05 | mkdir [目录名] | make directory | 创建目录 -p 递归创建目录 |
06 | rm [文件名] | remove | 删除指定的文件名 -f 强制删除,忽略不存在的文件,无需提示 -r 递归地删除目录下的内容,删除文件夹 时必须加此参数 |
07 | clear | clear | 清屏 |
08 | tree [目录名] | tree | 以树状图列出文件目录结构 -d 只显示目录 |
09 | cp 源文件 目标文件 | copy | 复制文件或者目录 -i 覆盖文件提示 -r 若给出的源文件是目录文件,则 cp 将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名 |
10 | mv 源文件 目标文件 | move | 移动文件或者目录/文件或者目录重命名 -i 覆盖文件前提示 |
11 | cat 文件名 | concatenate | 查看文件内容、创建文件、文件合并、追加文件内容等功能 -b 对非空输出行编号 -n 对输出的所有行编号 |
12 | more 文件名 | more | 分屏显示文件内容 操作键: 空格键 显示手册页的下一屏 Enter 一次滚动手册页的一行 b 回滚一屏 f 前滚一屏 /word 搜索 word 字符串 |
13 | grep 搜索文本 文件名 | grep | 搜索文本文件内容 (^a 搜寻以a开头的行 zh$ 搜索以zh结尾的行) -n 显示匹配行及行号 -v 显示不包含匹配文本的所有行 -i 忽略大小写 |
14 | echo 文字内容 | echo 会在终端中显示参数指定的文字,通常会和 重定向 联合使用 | |
15 | 重定向 > 和 >> |
| Linux 允许将命令执行结果 重定向到一个 文件 将本应显示在终端上的内容 输出/追加 到指定文件中 |
16 | 管道 | | Linux 允许将 一个命令的输出 可以通过管道 做为 另一个命令的输入 |
远程管理命令
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | shutdown 选项 时间 | shutdown | 关机/重新启动 -r 重新启动 不指定选项和参数,默认表示 1 分钟之后 关闭电脑 shutdown -r now 立刻重启 shutdown now 立刻关机 shutdown 19:00 shutdown +10 10分钟后关机 shutdown -c 取消 |
02 | ifcongfig | configure a network interface | 查看/配置计算机当前的网卡配置信息 网卡是一个专门负责网络通讯的硬件设备 ifconfig | grep inet 查看网卡对应的 IP 地址 |
03 | ping IP地址 | ping: 取自声纳的声音 原理:网络上的机器都有 唯一确定的 IP 地址,我们给目标 IP 地址发送一个数据包,对方就要返回一个数据包,根据返回的数据包以及时间,我们可以确定目标主机的存在 | 检测到目标 ip地址 的连接是否正常 IP 地址是设置在网卡上的地址信息 是 保证电脑之间正常通讯的重要设置
|
09 | ssh 用户名@ip | secure shell | 关机/重新启动
http 80 https 443 FTP 21 ssh [-p port] user@remote |
10 | scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径 | secure copy 是一个在 Linux 下用来进行 远程拷贝文件 的命令 | 远程复制文件 scp -P port -r demo user@remote:Desktop(把当前目录下的 demo 文件夹 复制到 远程 家目录下的 Desktop) -r 选项可以传送文件夹 -P 若远程 SSH 服务器的端口不是 22,需要使用大写字母 -P 选项指定端口 |
用户权限
-
在 Linux 中,可以指定 每一个用户 针对 不同的文件或者目录 的 不同权限
-
对 文件/目录 的权限包括:
序号 | 权限 | 英文 | 缩写 | 数字代号 |
---|---|---|---|---|
01 | 读 | read | r | 4 |
02 | 写 | write | w | 2 |
03 | 执行 | excute | x | 1 |
序号 | 命令 | 作用 | |
---|---|---|---|
01 | chmod +/-rwx 文件名|目录名 | chmod 可以修改 用户/组 对 文件/目录 的权限 | |
02 | sudo | su 是 substitute user 的缩写,表示 使用另一个用户的身份 | |
03 | groupadd 组名 | 添加组 | |
04 | groupdel 组名 | 删除组 | |
05 | cat /etc/group | 确认组信息 | |
06 | chgrp -R 组名 文件/目录名 | 递归修改文件/目录的所属组 | |
07 | useradd -m -g 组 新建用户名 | 添加新用户 | -m 自动建立用户家目录 -g 指定用户所在的组,否则会建立一个和同名的组 创建用户时,默认会创建一个和用户名同名的组名 |
08 | passwd 用户名 | 设置用户密码 | 如果是普通用户,直接用 passwd 可以修改自己的账户密码 |
09 | userdel -r 用户名 | 删除用户 | -r 选项会自动删除用户家目录 |
10 | usermod | 可以用来设置 用户 的 主组 / 附加组 和 登录 Shell | #修改用户的主组(passwd 中的 GID) # 修改用户的附加组 # 修改用户登录 Shell |
10 | cat /etc/passwd | grep 用户名 | 确认用户信息 | 新建用户后,用户信息会保存在 /etc/passwd 文件中 |
11 | id [用户名] | 查看用户 UID 和 GID 信息 | |
12 | who | 查看当前所有登录的用户列表 | |
13 | whoami | 查看当前登录用户的账户名 | |
14 | which | which 命令可以查看执行命令所在位置 | which ls # 输出 在 |
15 | su - 用户名 | 切换用户,并且切换目录 | - 可以切换到用户家目录,否则保持位置不变 |
16 | exit | 退出当前登录账户 | |
01 | chown | 修改拥有者 | # 修改文件|目录的拥有者 chown 用户名 文件名|目录名 |
02 | chgrp | 修改组 | # 递归修改文件|目录的组 chgrp -R 组名 文件名|目录名 |
03 | chmod | 修改权限 | # 递归修改文件权限 chmod -R 755 文件名|目录名 |
常见数字组合有(u
表示用户/g
表示组/o
表示其他):
-
777
===>u=rwx,g=rwx,o=rwx
-
755
===>u=rwx,g=rx,o=rx
-
644
===>u=rw,g=r,o=r
系统信息
序号 | 命令 | 作用 | |
---|---|---|---|
01 | date | 查看系统时间 | |
02 | cal | calendar 查看日历,-y 选项可以查看一年的日历 | |
03 | df -h | disk free 显示磁盘剩余空间 | 以人性化的方式显示文件大小 |
04 | du -h [目录名] | disk usage 显示目录下的文件大小 | |
05 | ps aux | process status 查看进程的详细状况 | a 显示终端上的所有进程,包括其他用户的进程 u 显示进程的详细状态 x 显示没有控制终端的进程 |
06 | top | 动态显示运行中的进程并且排序 | |
07 | kill [-9] 进程代号 | 终止指定代号的进程,-9 表示强行终止 |
打包压缩
其他命令
序号 | 命令 | 作用 |
---|---|---|
01 | find [路径] -name "*.py" | 查找指定路径下扩展名是 如果省略路径,表示在当前文件夹下查找 之前学习的通配符,在使用 有关 |
02 | ln -s 被链接的源文件 链接文件 | 建立文件的软链接,用通俗的方式讲类似于 Windows 下的快捷方式 没有 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够正常使用 |
在 Linux 中,文件名 和 文件的数据 是分开存储的
-
在 Linux 中,只有文件的
硬链接数 == 0
才会被删除 -
使用
ls -l
可以查看一个文件的硬链接的数量