linux 自查手册 - 命令

394 阅读5分钟
  • Linux 严格区分大小写
  • Linux 中所有的内容以文件形式保存,包括硬件、用户和文件
  • Linux 不靠扩展名区分文件类型,是靠权限来区分的,但是有一些约定的扩展名,是给管理员看的
    • 压缩包 .gz .bz2 .tar.bz2 .tgz
    • 二进制文件 .rpm
    • 网页文件 .html .php
    • 脚本文件 .sh
    • 配置文件 .conf
  • Windows 下的程序不能直接在 Linux 中安装和运行
  • Linux 更多使用字符界面
    • 占用的系统资源更少

    • 减少了出错和被攻击的可能性,会让系统更稳定

连接服务器

  • 最简单的就是直接使用 web shell
  • ssh 连接
ssh root@106.14.166.104

回车 -> yes -> 输入密码

image.png

linux 常用命令

常见目录

目录用途
/根目录
/boot启动目录,启动相关文件
/dev设备文件
/etc配置文件
/home普通用户的家目录,可以操作
/lib系统库保存目录
/mnt移动设备挂载目录
/media光盘挂载目录
/misc磁带机挂载目录
/root超级用户的家目录,可以操作
/tmp临时目录,可以操作
/proc正在运行的内核信息映射,主要输出进程信息、内存资源信息和磁盘分区信息等等
/sys硬件设备的驱动程序信息
/var变量
/bin普通的基本命令,如 ls, chmod 等,一般的用户也都可以使用
/sbin基本的系统命令,如 shutdown, reboot, 用于启动系统,修复系统,只有管理员才可以运行
/usr/bin是你在后期安装的一些软件的运行脚本
/usr/sbin放置一些用户安装的系统管理的必备程序

命令基本格式

命令提示符

[root@xxxx tmp]#
  • root 当前登录用户
  • localhost 主机名
  • ~ 当前工作目录,默认是当前用户的家目录
  • 提示符, 超级用户是 # , 普通用户是 $

image.png

命令格式

  • 命令 [选项] [参数]
  • 当有多个选项时可以写在一起
  • 一般参数有简化和完整写法两种 -a 与 --all 等效

ll = ls -l

  • ls: list 列出当前的文件夹下的所有文件
  • -l: 列出文件的详细信息
  • -a 显示所有文件,包含隐藏文件
  • -d 查看目录本身的属性,而非子文件
  • -h 人性化的方式显示文件大小

image.png

mkdir

  • 创建目录
  • mkdir -p [目录] // 递归创建
mkdir aa
mkdir -p bb/cc

cd

  • 切换所在目录 change directory
  • cd 目录
    • ~ 家目录
    • . 当前目录
    • .. 上级目录
  • 相对路径是参照当前所在目录
  • 绝对路径是从根目录开始
  • 按 TAB 键可以补全命令和目录
cd hello

pwd

  • 显示当前目录 pwd = print working directory

image.png

rmdir

  • 删除空目录 remove empty directory
  • rmdir [目录]
rmdir hello

rm

  • 删除文件或目录 remove
  • rm [文件或目录]
    • -r 删除目录
    • -f 强制删除
  • rm -rf [文件或目录] 递归强制删除所有目录
rm -rf hello

cp

copy

  • -r 复制目录,默认是文件
  • -i 会在复制文件的时候提示

mv

移动或改名

ln

  • 链接命令,生成链接文件 link
  • ln [源文件] [目标文件]
    • 创建硬链接
  • ln -s [源文件] [目标文件]
    • -s 创建软链接
  • 类似与 windows 快捷方式
  • 修改任意一个文件, 另一个都会改变
  • 删除源文件,软链接不能使用
  • 软链接源文件必须写绝对路径
ln -s /root/folder/1.txt 11.txt

文件搜索命令

locate

  • 在后台数据库中按文件名搜索,速度比较快
  • 数据保存在 /var/lib/mlocate/mlocate.db 后台数据库, 每天更新一次
  • 可以 updatedb 命令立刻更新数据库
  • 只能搜索文件名
yum install mlocate -y // 需要先安装 mlocate 

which

  • 可以看到别名 which ls
  • 能看到的都属外部安装的命令
  • 无法查看 shell 自带的命令, 如 which cd

环境变量

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

  • 定义的是系统搜索命令的路径
  • echo $PATH
  • 操作系统是多用户的,系统变量针对所有的用户生效,用户变量针对当前用户生效 image.png

find

  • 文件搜索命令
  • find [搜索范围][搜索条件]
按名称搜索
  • 避免大范围的搜索, 会非常消耗系统资源
  • -name
  • -i 不区分大小写
find / -name 1.txt // 查找根目录下名称为 1.txt 的文件
通配符
  • find 是在系统当中搜索符合条件的文件名,如需要匹配,使用通配符匹配, 通配符是完全匹配
  • 通配符
      • 匹配任意内容
    • ? 匹配任意一个字符
    • [] 匹配任意一个中括号内的字符
touch abc.txt
find . -name ab[cdef].txt  // 可以找到 abc.txt 文件
find . -iname ab[Cdef].txt  // 可以找到 abc.txt 文件

image.png

按时间搜索
find -mtime +5
参数含义
atime文件访问时间
ctime改变文件属性的时间
mtime修改文件内容的时间
参数含义
-55天内修改的文件
55天前当天修改的文件
+55天前修改的文件

image.png

按大小搜索
  • k 小写, M 大写
find . -size +0k
参数含义
-8k小于8k
8k等于8k
+8k大于8k
综合应用
find /tmp -size +10k -a -size -20k
  • 查找 /etc 目录下, 大于 10kb并且小于20kb
  • a and 逻辑与,两个条件都满足
  • -o or 逻辑或, 两个条件满足一个就可以
  • -exec 对上个命令的结果进行操作
find /tmp -size +10k -a -size -20k -exec ls -lh {} \;

grep

  • 在文件当中匹配符合条件的字符串
    • -i 忽略大小写
    • -v 排除指定字符串
  • find 命令,在系统当中搜索符合条件的文件名, 如需匹配,使用通配符匹配
  • grep 命令在文件当中搜索符合条件的字符串,如需匹配使用正则表达式匹配
vi a.txt
cat a.txt // cat concatenate 命令用于连接文件并打印到标准输出设备上。
grep b a.txt
grep -v b a.txt // a.txt 中不报含 b 的
grep -i f a.txt  // a.txt 中找到 f ,不区分大小写

image.png

解压缩命令

zip
  • 压缩文件或目录是一种压缩格式 |功能|命令| |---|---| | 压缩文件| zip 压缩文件名.zip 的源文件 | |压缩目录| zip -r 压缩目录名 .zip源目录| |解压| unzip 加压目录名 .zip|
yum install unzip zip -y

mkdir book
touch book/1.txt
touch book/2.txt
zip -r book.zip book
rm -rf book
unzip book.zip

image.png

gzip
  • gzip 为高压,可以把文件压缩的更小
  • gzip 命令不支持目录
命令示例
gzip 源文件gzip a.txt 不会保存源文件,压缩后只有压缩文件
gzip -c 源文件 > 压缩文件gzip -c a.txt > a.txt.gz 会保存源文件
gzip a.txt // 不会保存源文件,压缩后只有压缩文件
gzip -c a.txt > a.txt.gz // 会保存源文件  -c 创建包  > 重定向,会把 a.txt 写到 a.txt.gz 中去
gzip - r book // 会把 book 目录下的文件压缩
gzip -d a.txt.gz // 解压
gunzip a.txt.gz // 解压

image.png

useradd zhangsan // 创建张三用户
tar
  • 打包命令,只打包不压缩
  • tar -cvf 打包文件名 源文件
    • -c 打包
    • -v 显示过程
    • -f 指定打包后的文件名
    tar -cvf book.tar book
    
    • -x 解开包
    tar -xvf book.tar
    
tar.gz
  • gzip 压缩比较高,但是不能压缩文件夹。
  • tar可以把一个文件夹打包成一个文件,没有压缩功能
  • 压缩文件夹时 可以先 tar 后 gzip`
tar -zcvf book.tar.gz book // -z 是 gzip 的意思
tar -zxvf book.tar.gz // 解压

关闭和重启命令

shutdown 关机命令

  • -c 取消前一个关机命令
  • -h 关机
  • -r 重启
  shutdown -r 06:00
  shutdown -c

init

  • 关机 init 0
  • 重启 init 6

logout

  • 退出登录 logout

  • w 或 who
  • last 倒序,最近登录者

image.png

image.png

查看文件内容

cat 1.txt

more

  • 查看更多, 一页一页的看, 可以翻页(空格是下一页, b 是上一页)

head

  • head -2 1.txt // 查看前两行

tail

  • tail -2 1.txt // 查看后两行
  • tail -f 1.txt // 实时查看文件变化的内容
head -6 1.txt | tail -3 // 查看前 6 条的后3条    // 123456789 -> 123456 -> 456