Linux基础(二)

监视系统和进程操作

  • w:了解系统中目前用户的操作
    • FROM:用户连接到服务器的IP地址(或者主机名)
    • LOGIN@:用户连接系统的时间 * IDLE:计算用户没运行任何命令的时长
    • JCPU:该终端所有相关的进程使用的cpu(处理器)时间
    • PCPU:当前进程使用的cpu时间
    • WHAT:用户正进行的程序
  • date:查看当前时间 ---- uptime:查看运行时间
  • ps:显示进程的快照,静态
    • 不加参数时只会列出当前运行ps命令的用户在当前终端中所运行的进程
    • ps -ef:列出所有进程
    • ps -efH:以乔木状列出所有进程
    • ps -u 用户名:列出此用户运行的进程
    • ps -aux:通过cpu和内存使用来过滤进程
      • PID:进程号(唯一性)
      • TTY:该进程运行所在的终端
      • TIME:进程运行时长
      • CMD:产生此进程的程序名
      • PPID:程序的父进程号
    • -pcpu:cpu使用率 -pmem:内存使用率
      • ps -aux --sort -pcpu | head根据cpu使用率来降序排列进程
      • ps -aux --sort -pcpu,+pmem | head根据cpu和内存使用率来降序排列
  • top:显示进程的动态列表(动态,可交互) 该命令无法显示全部的进程,只显示排在前面的进程 ** 默认的进程排序是根据处理器的比率**
    • q:退出top
    • B:加粗某些信息
    • u:依照用户来过滤信息
    • k:结束某个进程
    • f:在列表中添加或删除某些列
    • s:改变刷新页面的时间,默认为3/a
  • kill 进程号(PID):结束一个进程,多个进程之间使用空格隔开
    • kill -9 进程号:立即强制结束进程
  • killall 程序名:结束多个进程
    • poweroff:立即关机
    • halt:关闭系统
    • reboot:重启系统

RTFM-手册

man: man + 数字 + 命令/函数

  • 若不加数字,man命令默认从数字较小的手册中寻找相关命令和函数
  • 手册页不同区域:
    • SYNOPSIS:概要 - 使用此命令的所有方法
    • DESCRIPTION:描述-参数及其用法
    • REPORTING BUGS:报告故障
    • SEE ALSO:另见-拓展阅读
  • SYNOPSIS区域的语法总结:
    • 粗体:原封不动的输入
    • 下划线的部分:用实际的内容替换
    • [-hvc]:表示-h、-v、-c是可选的,非强制的
    • a | b:可输入a或者b,但不能同时输入a和b
    • option……:省略号表示前面的内容可以输入很多个
  • whatis:是man命令的精简版,只能概述命令的作用

Vim

Vim三种工作模式: (默认是交互模式)
  • 交互模式:(复制粘贴、撤销等)不可输入文本,但可进行交互操作
  • 插入模式:(输入文本)
    • i 进入此模式,Esc退出
  • 命令模式:(保存退出、配置等)
    进入此模式前需是交互模式 :code
    • :w 后可加文件名
    • :q!表示不保存最近修改内容且强制退出
交互模式操作
  • 0:将光标定位到行首
  • $:将光标定位到行末
  • w:隔单词移动
  • x:删除字符 — 数字+x→删除字数
  • r:替换
    • R:切换到替换模式,一次性可替换多个字符
  • u:撤销数字+u — ctrl + r:取消撤销
  • n + gg:跳转到第n行
    • shift + g:跳到最后一行
    • gg:跳转到第一行
  • / (?):查找
    • n→下一个 N→上一个
  • :r 文件名:合并文件
  • :!+命令:运行外部命令

shell

shell变量
  • #!/bin/bash 它可以保证此脚本会被我们制定的shell执行 ,非必要
  • bash -x 文件:表示调用Bash来调试脚本文件 -x:以调试模式运行
  • 双引号忽略大部分特殊字符,但美元符号($)、反引号(`)、反斜杠 () 等3种特殊字符除外
  • 反引号要求Shell执行被它括起来的内容
  • read:请求用户输入文本 read + 变量名
    • read命令可一次性给多个变量赋值
    • -p:显示提示信息
    • -n:限制用户输入字符串的最大长度
    • -t:限制输入的时间
    • -s:隐藏输入内容
  • let:操纵数字
  • 环境变量(全局变量):shell的环境变量可以被此种shell的任意脚本程序使用
    • env:显示目前所有的环境变量
    • SHELL:目前使用的那种shell,变量名要大写
    • export:定义环境变量
  • 参数变量:
    • $#:包含参数的数目
    • $0:包含脚本的名字
    • $1:第一个参数
  • 数组:
  • 定义数组时用 () 括起来 array=('value','value2')
  • 访问数组元素:${array[2]}
  • 给数组元素赋值:array[3]='value3'
  • * 一次性获取数组所有元素 ${array[*]}
shell条件
  • 规范:

    • [ 条件测试 ] 两边必须各空一格,在shell中,判断符号两边也需要各空一格
    • then后面的语句表示条件满足即执行,else则是条件不满足时
    • fi表示if语句结束
  • 测试字符串:

    • $string1 = $string2 两个字符串是否相等
    • $string1 != $string2 两个字符串是否不相等
    • -z $string 字符串string是否为空
    • -n $string 字符串string是否不为空
  • 测试数字:

    • $num1 -eq $num2 判断两个数字是否相等
    • $num1 -ne $num2 判断两个数字是否不相等
    • $num1 -lt $num2 判断num1是否小于num2
    • $num1 -le $num2 判断num1是否小于或者等于num2
    • $num1 -gt $num2 判断num1是否大于num2
    • $num1 -ge $num2 判断num1是否大于或者等于num2
      11
  • 测试文件:

    • -e $file 文件是否存在 if [ ! -e $file ]
    • -d $file 文件是否是目录
    • -f $file 文件是否是文件
    • -L $file 文件是否是符号链接文件
    • -r $file 文件是否可读
    • -w $file 文件是否可写
    • -x $file 文件是否可执行
  • 一次性测试多个条件:

    • &&:逻辑与
    • ||:逻辑或
  • 反转测试:!

case语句
  • in表示在……
  • ;; 相当于break
  • * 相当于else
  • esac表示语句结束
    1
shell循环
  • while循环:在……期间
    在这里插入图片描述

  • until循环:直到……为止

  • for循环:
    在这里插入图片描述

  • seq:序列循环

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值