Linux 常用命令(后台web开发)

【概述】开发过程中,web后端一般部署在linux 中,所以linux 的基本常用命令是需要会的,在这里整理了一下开发过程中的一些常用命令,后面有其他的也会整理进来,方便以后的查找。


一、常用命令

1.1 文件处理命令

  1. ls 显示文件目录
    1. 语法:ls [-选项] [文件或目录]
    2. 选项:
      1. a 显示所有文件,包括隐藏文件
      2. l(小写l)显示详细信息
      3. i 显示 i节点(可以通过find 命令查找)
  2. touch 创建一个空文件
  3. mkdir 创建一个文件夹

1.2 权限处理命令

  1. chmod 改变文件或目录的权限
    1. 语法:
      1. chmod [{ugo}{+-=}{rwx}] [文件或目录]
      2. chmod [777] [文件或目录]
    2. 说明
      1. 文件 的 w 写权限,不代表可以删除文件,只有修改文件的权限
      2. 目录 的 w 表示,可以在目录下创建和修改文件
    3. 注意:由文件的w 权限,无目录的w 权限,是不允许删除的
  2. chown 改变文件的所有者
  3. chgrp 改变文件的所属组
  4. umask -S 查看系统默认的权限

1.3 文件搜索命令

  1. find 查找任何文件或目录(所有)
    1. 语法
      1. find [搜索范围路径] -name [文件名]
      2. find [搜索范围路径] -size [+-,按照文件大小查找,+:大于;-:小于]
      3. find [搜索范围路径] -user [文件的所有者]
      4. find [搜索范围路径] -type [d(目录)/f(文件)/l(软连接)]
      5. find -[时间查找] (以天、分钟为单位)[+-]
        1. [以天为单位] 1 ctime、atime、mtime
        2. [以分钟为单位] 1 cmin、amin、mmin
        3. c:change 改变文件属性的意思;a:access 被访问;m:modify 被修改内容;
        4. +:之外;-:之内;
      6. find ... -exec/ok [执行命令] {} \; 文件结果执行命令(例如找到文件并删除)
        1. ... 代表文件搜索选项
        2. {} 代表 前一步 的结果集
        3. exec和ok的区别是,ok 有询问确认的意思;
      7. find -inum [inode seq] i节点标识
    2. 连接符:-a (and,逻辑与);-o(or,逻辑或)
  2. which 查看命令所在的目录位置
    1. 语法:which [命令名称]
  3. locate 查找文件,根据linux数据库内部索引查找
    1. 【优点】查找速度很快,比find快
    2. 【缺点】有时新创建的文件找不到,需要配合updatedb命令,更新数据库;
  4. man 帮助命令,获得命令的帮助文档
    1. 语法:man [命令或配置文件]
  5. whatis 查看命令的描述
  6. --help 查看命令的选项

1.4 压缩解压缩命令

  1. tar 打包目录,生成后缀名.tar.gz,或者进行解压
    1. 语法:tar [zcvf] [zxvf] [打包文件.tar.gz] [源文件]
      1. -c 文件打包
      2. -x 文件解压缩
      3. -v 详细信息
      4. -f 指定压缩后的文件名
      5. -z 打包同时压缩
      6. -C 指定解压后存放的路径
  2. zip 生成win和linux通用.zip 文件
    1. 语法:zip [选项 -r] [压缩后文件] [源文件]
  3. unzip 进行解压缩
    1. 选项:最后配置加 -d,指定文件解压后存放的位置

1.5 其他命令

  1. ping (ping 不同对方网络的原因很多,需要一一排查)
    1. ping 127.0.0.1 ping 自己的回环地址,判断网络协议是否正确
    2. ping 自己的网络ip,判断网络地址是否正确
    3. 检查对方的网络配置、防火墙、插件等
    4. 如果发现丢包率里有丢失数据包,可能网线、网络问题
    5. -c 指定ping的次数
    6. -s 指定ping 时长
  2. grep 过滤,可以将指定内容进行过滤输出
  3. | 管道,将一个命令的输出传送给另一个命令的输入,可以连接N 个命令
    1. 例子:ls -l /etc | grep init | wc -l(最后进行统计显示的个数)
  4. && 逻辑与(ls && pwd,第一条成功,第二条才会执行)
  5. || 逻辑或(ls || pwd,第一条成功,第二条不执行;第一条失败,第二条才执行)
  6. 重定向
    1. > 标准输出重定向(如果是追加,使用>>)
    2. < 标准输入重定向
    3. 2> 错误重定向

二、vi/vim

  1. 工作模式:命令模式、插入模式、编辑模式;
    1. 插入模式:aio
      1. a 光标后插入;A 行末插入
      2. i 光标前插入;I 行首插入;
      3. o 光标下插入新行;O 光标上一行插入;
  2. 定位命令
    1. 编辑模式
      1. 跳转行号,直接输入行号+回车
      2. set number(nu) 设置行号
      3. set nonu 取消行号
    2. 命令模式
      1. j 下移一行;k 上移一行;h 左移一个字符;l 右移一个字符;
      2. $ 行尾;0 行首;
  3. 删除命令
    1. 命令模式
      1. x 删除光标所在处字符;dd 删除所在行;ndd 删除光标后n行
    2. 编辑模式
      1. n1,n2d 删除指定范围内的行
  4. 复制和粘贴
    1. 命令模式
      1. yy/Y 复制当前行
      2. nyy/nY 复制当前以下n行
      3. dd 剪切当前行;ndd 当前以下n行;
      4. p、P 粘贴在光标所在行上、行下;
  5. 替换、搜索
    1. 命令模式
      1. r 取代光标所在字符;R 从光标所在开始替换字符,esc 结束
      2. u 取消上一步操作(类似 win ctl+z)
      3. /string 向前搜索指定字符串(忽略大小写,:set ic)
      4. :%s/old/new/g 全文替换指定字符串
      5. :n1,n2/old/new/g 在行1,行2之间替换字符串

三、用户管理

  1. 配置文件
    1. /etc/passwd 用户信息文件
      1. 用户名:密码:用户标志号:缺省组标志号:注释性描述:宿主目录:命令解释器
    2. /etc/shadow 密码文件
      1. 用户名:密码:最后一次修改的天数;两次修改密码之间最小天数;密码有效天数;系统警告到密码失效的天数;帐号闲置时间:密码失效的绝对天数;标志(不使用)
    3. /etc/login.defs /etc/default/useradd 用户配置文件
    4. /etc/skel 新用户信息文件
    5. /etc/group 用户组文件
    6. /etc/gshadow 用户组密码文件
  2. 用户管理命令、用户组命令、组授权
    1. 用户管理
      1. useradd [username] 添加用户
      2. passwd [username] 设置密码
      3. usermod -l [new] [old] 修改用户
    2. 用户组管理
      1. groupadd 添加组
      2. groupdel 删除组
      3. groupmod 修改组
      4. groups [用户名] 用户所属组
      5. gpasswd 管理组内成员
        1. -a 添加用户
        2. -d 删除用户
        3. -A 设置管理员

四、进程管理

  1. w(who) 查看用户信息
  2. ps 进程查看命令
    1. 选项
      1. -a 显示所有用户进程
      2. -l 长格式显示
      3. -u 显示用户和启动时间
      4. -x 显示没有控制终端的进程
      5. -e 显示所有进程,包括没有控制终端的进程
      6. -w 宽行显示
      7. --sort 排序
    2. 显示参数
      1. STAT 当前状态,S休眠 D 不可中断休眠 R 运行状态 Z 僵死状态 T 停止
      2. UID 当前启动进程的用户
      3. PID 进程号
      4. PPID 父进程ID
      5. TTY 进程启动的终端
      6. NI 进程优先级
      7. TIME 占用的时间
    3. 常用
      1. ps -el 查看所有进程
      2. ps -aux 显示当前进程占用CPU和内存百分比
      3. ps -aux|grep tomcat 过滤
  3. nohup 使进程在用户退出登陆后仍旧继续执行
    1. & 后台进程
    2. ctrl + z 挂起
  4. jobs 查看后台进程
  5. fg [任务编号] 任务恢复到前台执行;bg [任务编号] 任务恢复到后台执行;
  6. top 进程状态显示和进程控制(动态显示)
    1. d 指定刷新时间间隔
    2. c 显示命令行参数信息
    3. u 查看用户的进程
    4. k 终止正在执行的进程
  7. 任务计划
    1. at 在某一时刻进行
      1. at [HH:MM YYYY-MM-DD] 或 now + n (minutes、hours、days)
    2. crontab {-l、-r、-e} 周期性作业,用于生成cron进程所需要的crontab文件
      1. 选项
        1. -l 显示当前crontab
        2. -r 删除
        3. -e 编辑
      2. 计划命令的时间格式
        1. 分钟|小时|天|月|星期|命令or脚本
      3. 启动
        1. /etc/rc.d/init.d/crond start

你可能感兴趣的:(个人学习)