zoukankan      html  css  js  c++  java
  • 做 Web 开发少不了这些的

    抱歉,似乎有些标题党了。最近做服务器的热备,整理了些李纳斯工具的适用方法。看看还有不错的。

    基本命令

    • sleep 500 暂停
    • ctrl + z 暂停
    • progress & 后台运行
    • jobsgfg 查看后台任务
    • file 查看文件类型
    • cd - 上一个工作目录
    • pwd 查看当前工作目录
    • touch 创建文件或者更新文件创建时间
    • rm -i 交互式删除

    时间相关

    • date 查看时间
    • date +%Y--%m--%d 格式化显示
    • date -s "20:20:16" 修改时间
    • hwclock 查看硬件时钟
    • cal 查看日历
    • uptime 查看系统运行时间

    输出查看

    • echo 输出指定的字符到标准输出
    • cat 输出指定文件到标准输出
    • head -n 指定行数
    • tail
      • -n 显示行数
      • -f 实时更新
    • more 只能向下翻页
    • less 上下翻页

    查看硬件信息

    • lspci -v 查看pci设备
    • lsusb -v 查看use设备
    • lsmod 查看加载的驱动

    关机重启

    • shutdown -h 关机
    • shutdown -h +10 10分钟后关机
    • shutdown -r 重启
    • shutdown -r now 现在重启
    • shutdown -h 20:30 20点30分关机
    • poweroff 关机
    • reboot 重启

    归档、压缩

    • zip xxx.zip myfile

    • unzip xxx.zip

    • tar -xvf out.tar

    • tar -cvf out.tar myfile

    • tar -zcvf out.tar.gz myfile

    查找

    • locate keyword 在数据库里查找

    • updatedb 更新数据库

    • find . -name "aa" 查找文件名带aa的文件

    • find / -name *.conf 查找conf目录

    • find / -perm 777 查找文件模式为777的

    • find / -type d 查找文件夹

     find . -name "*a*" -exec cat {} ;
    

    查找名字里带a的文件,并且cat出来,注意后面的{} ;是必须的,且中间必须有空格

    • 查找条件
    • -name
    • -perm
    • -user
    • -group
    • -ctime
    • -type
    • -size

    常见目录及功能

    • /opt 目录安装大型软件
    • /proc 系统实时信息,虚拟目录
    • /sbin 超级用户才能执行的命令
    • /usr 一般的软件安装
    • /var 经常变化的信息

    BASH

    • !! 重复执行前一个命令

    • !字符 重复前一个命令以『字符』开头的命令

    • !num 按历史纪录重复执行

    • !?ea 重复执行之前包含ea的命令

    • !-n 重复执行n个命令之前的那个命令

    • ctrl + r 在历史命令中搜索

    • esc . 按个esc然后再按一下. 使用上一个命令的参数

    • ? 匹配任意一个字符

      • 任意一个字符
    • [0-9] 数字

    • [abc] 任意字符

    • [^abc] 除列表以外的字符

    VIM

    :sh 到BASH环境中

    ctrl+d 回到VIM

    分区

    • fdisk -l 列出硬盘信息

    • fdisk /dev/sdb 进行交互式分区

      • m 帮助
    • partprobe 更新一下分区表

    分区机制有MBR和GPT两种
    MBR 使用BIOS引导方式的PC设备,目前不支持2T以上,支持分区数量有限

    分区表只有256字节信息

    MBR最多只能创建4个主分区,主分区可以直接使用, 更多分区使用扩展分区和逻辑分区

    一个扩展分区会占用一个主分区位置,扩展分区不能直接用

    基于扩展分区创建逻辑分区

    最多支持63个IDE分区,15个SCSI分区

    GPT EFFI引导方式

    文件系统

    操作系统通过文件系统管理文件及数据,磁盘或者分区需要创建文件系统后才能被操作系统使用

    • mke2fs 创建文件系统

    • mke2fs -t ext4 /dev/sda3 创建文件系统类型

      • -b 文件块大小,4k
      • -c 建立的时候检查坏损块
      • -L 建立卷标
      • -j 建立文件系统日志
    • dumpe2fs 查看分区的文件系统信息

    • fsck 检查并且修复损坏的文件系统

    带有日志的文件系统有较强的恢复性

    挂载分区

    • mount /dev/sdb1 /mnt/ 挂载到指定的位置
    • mount 查看已经挂载的分区
    • lsof 查看哪些文件被使用,被谁打开
    • fuser -m /dev/sdb1 被谁使用

    配置/etc/fstab 自动挂载

    帮助信息

    • ls --help
    • ls -h
    • man ls
    • man -k 关键字查找命令
    • info 更详细

    用户

    root 用户 0

    系统用户 1-499

    普通用户 500以上

    相关文件

    • /etc/passwd 密码
    • /etc/shadow 用户密码
    • /etc/group 保存组

    当前用户命令

    • whami 当前登录用户
    • who 哪些用户
    • w 有哪些用户在干什么

    用户操作

    • useradd 添加用户
    • usermod 修改用户
    • userdel 删除用户

    用户组操作

    • groupadd 用户组添加
    • groupmod 用户组修改
    • groupdel 用户组删除

    权限

    限制对特定文件的读、写、执行,每一个文件都有特定的权限
    进程权限与运行它的用户权限相关

    目录必须有x权限,否则不能查看内容

    UGO: user group other

    每三个一组r w x

    rwxrwxrwx 三个一组

    修改权限

    • chown 修改拥有者

    • chgrp 修改所有组

    • chmod 修改权限

    • ugo代表用户、组其它

    • a代表所有

    • +-增加或者删除

    • rwx 三种权限

    chmod g-x xxxxx 减去xxxxx的用户组执行权限

    网络

    32bit分为网络部分和主机部分
    子网掩码用来确定网络部分的位数

    • ifconfig -a 查看所有接口

    • ifconfig eth0 查看特定接口

    • ifup eth0 启用接口

    • ifdown eth0 禁用接口

    • setup 配置网络信息

    网络排查相关命令

    • host 查看域名对应ip
    • dig 查看域名信息
    • ip route 查看路由表
    • traceroute 查看到达目标地址经过的路由
    • mtr 网络质量测试

    管道和重定向

    • STDIN 0
    • STDOUT 1
    • STDERR 2
    > STDOUT 重定向到文件【覆盖】
    >> STDOUT 重定向到文件,追加
    2> STDERR 重定向到文件
    2>&1 STDERR与STDOUT结合
    <  重定向到STDIN
    | 一个命令的STDOUT作为另一个命令的STDIN
    2>/dev/null 把错误重定向到null设备
    

    安装删除包

    • rpm -i xxx.rpm 安装

    • rpm -e xxxx 卸载

    • rpm -U xxx 升级

    • rpm -ivh http://xxxx 网络安装

    • rpm -qa 安装的列表

    • rpm -ql xxx 安装的东西

    • yum search

    • yum list (all | installed | updates)

    • yum info packagename

    文本处理工具

    • grep

      • -i 忽略大小写
      • -n 显示行数
      • -v 不带关键字的行
      • -Ax 之后的x行
      • -Cx 之前之后的x行
      • -Bx 之前的x行
    • cut

      • -d 切分符号
      • -f 显示的列
      • -c 基于字符进行切割
    cut -d: -f1 xxx 对xx文件进行
    cut -c2-6 xxx 基于2到6进行切割
    
    • wc

      • -l 只计行数
      • -w 只讲单词
      • -m 字符
      • -c 只计字节数
    • sort 排序

      • -r 倒序
      • -u 删除重复行
      • -tc 使用c进行分割为列进行排序
    • uniq 删除重复相邻行

    • diff 比较文件

      • -b 忽略空格数量改变
      • -u 生成patch文件
    • aspell 拼写检查

    实际例子

    tr -d 'apple' < hosts 删除hosts文件里的apple
    tr 'a-z''A-Z' < hosts 大小写转换
    
    sed 's/str/newstr/g' hosts 替换hosts中的str
    sed '1,50s/str/newstr/g' hosts 只替换1到50行
    sed -e 's/linux/unix/g' -e 's/xxx/xsdjlfsjdf' hosts  连续处理两个替换
    
    sed -f command hosts 把替换的命令放到command文件里
    
    ps aux | grep xxx  查看某个进程
    
    lsof -i:portnum 查看端口被哪个进程占用
    
    kill -9 pid 杀掉某个进程
    
    killall program 杀掉指定名称的所有进程
    
  • 相关阅读:
    Html中,id、name、class、type的区别
    Windows10右键添加“在此处打开命令窗口”
    yarn的安装与使用及与npm对应的命令
    TodoMVC:帮助你选择一个MV*框架
    迅速上手:使用taro构建微信小程序基础教程
    编程之性能优化知多少
    CQRS
    事件驱动之异步事件
    事件驱动下
    事件驱动上
  • 原文地址:https://www.cnblogs.com/yakun/p/3904507.html
Copyright © 2011-2022 走看看