博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux常用系统工作命令、管理输入输出以及vim、管道的相关用法
阅读量:3920 次
发布时间:2019-05-23

本文共 5009 字,大约阅读时间需要 16 分钟。

一、常用系统工作命令

  1. date
    ➢date                 显示当前时间
    在这里插入图片描述
    ➢date +%r              显示格式:小时:分钟:秒 AM|PM
    在这里插入图片描述
    ➢date “+%Y-%m-%d %H:%M:%S”   按"年-月-日 小时:分钟:秒"的格式依次显示系统当前时间
    在这里插入图片描述
    ➢date -s “20181556 12:56:12”     设置系统当前时间
    在这里插入图片描述
    ➢date +%j              用来查看今天是当年中的第几天
    在这里插入图片描述
    ➢watch -n 1 date           让date命令每秒执行一次,之后可用ctrl+c退出监控模式
  2. passwd
    ➢passwd        修改超级用户(root)的密码
    ➢passwd student     修改普通用户(student)的密码
    注意:修改密码和原始密码不能相似
       密码必修是无序数字+字母
       密码必须大于8位
  3. tab
    ➢tab  可以自动补齐系统中存在的文件名称或者命令
    注意:当按tab补齐不成时,那么是因为以这个字符开头的内容不唯一可以按两次tab用来显示所有以此字符开头的内容如果两次依然没有,那么就是不存在的
  4. 历史调用
    ➢history    显示历史
    ➢history -c   清空当前环境中的历史
    进入history命令之后:
    !数字        调用指定行数的历史,执行此行的命令
    !字母        执行最近一条以这个字母开头的命令
    在这里插入图片描述
    ctrl+R+关键字   执行最近一条含有这个关键字的命令
  5. 关机|重启
    关机:
    ➢poweroff | init0 | shutdown -h now
    重启:
    ➢reboot | init6 | shutdown -r now
  6. 锁屏
    ➢ctrl+alt+l    在rhel7.0
    ➢ win+l     在rhel7.2
  7. stat
    ➢stat    用于查看文件的具体存储信息和时间等信息  
          会显示文件的三种时间状态: Access、 Modify、 Change
  8. diff     用于比较多个文本文件的差异
    ➢diff  --brief  file1  file2    判断文件是否相同
    ➢diff  -c  file1  file2     比较文件具体的不同之处
    在这里插入图片描述
  9. grep      用于在文本中执行关键词搜索,并显示匹配的结果
    ➢grep  -b   找的关键词 file 将可执行文件(binary)当作文件来搜索
    ➢grep  -c   仅显示找到的行数
    ➢grep  -i   忽略大小写
    ➢grep  -n   显示行号*
    ➢gerp  -v   反向选择—仅列出没有“关键词”的行*
  10. find 用于按照指定条件来查找文件
    格式:find  [查找路径]  寻找条件  操作
    寻找条件(如文件名、大小、修改时间、权限等信息)为不同的文件特性
    ➢find -name      匹配名称
    ➢find  -perm      匹配权限(mode为完全匹配,-mode为包含即可)
    ➢find   -user      匹配所有者
    ➢find   -group     匹配所有组
    ➢find   -mtime  -n  +n   匹配修改内容的时间(-n指n天以内,+n指n天以前)
    ➢find  -atime  -n  +n   匹配访问文件的时间(-n指n天以内,+n指n天以前)
    ➢find   -ctime  -n  +n   匹配修改文件权限的时间(-n指n天以内,+n指n天以前)
    ➢find   -nouser       匹配无所有者的文件
    ➢find   -nogroup       匹配无所有组的文件
    ➢find  -newer  f1  !f2   匹配文件f1新但比f2旧的文件
    ➢find  --type  b/d/c/p/l/f   匹配文件类型后面的字母参数依次表示:
                  块设备,目录,字符设备,管道,链接文件,文本文件
    ➢find   -size     匹配文件的大小(+50KB为查找超过50KB的文件
                      -50KB为查找超过50KB的文件)
    ➢find   -prune    忽略某个目录
  11. <<end
    ➢cat >>filename<<END    (END可以为任意字母或数字)
    在这里插入图片描述

二、修改文件(gedit、vim)

  1. 图形工具
    ➢gedit  file
    进入后的快捷键:
     ctrl+n   在gedit中打开一个新的tab
     ctrl+s   保存文件
     ctrl+o  打开文件
     ctrl+x   剪切字符
     ctrl+v   粘贴字符
     ctrl+c   复制字符
    ➢yelp  help : gedit     gedit图形手册
  2. Vim
    >vim的工作模式
    命令模式   在每次运行vim 编辑器时,默认进入命令模式
    插入模式   按“ i ”可从命令模式切换至插入模式 按“ESC”可从插入模式切换至命令模式
    退出模式   :
  • 命令模式
  1. vim帮助
    方法1:➢vim file —> : help
    方法2:➢vimtutor (vim手册) —>:q (退出)
  2. vim工作参数设定
    临时设定
    ➢vim  file (进入后)
    :set        参数信息
    :set  nu       显示行号
    在这里插入图片描述
    :set  nonu     不显示行号
    在这里插入图片描述
    :set  mouse=a   设置鼠标
    :set  cursorline   设置行线
    在这里插入图片描述
    :数字        跳转到该行
    注意:以上设定方式在vim退出后会还原默认
    永久设定:
    ➢vim  /etc/vimrc
    在这里插入图片描述
    set nu          ##都不需要带:
    写在这里插入图片描述
    set mouse=a
    set cursorline
    注意: 以上操作必须用root用户才能完成
  3. 字符管理
    y      复制
    yl     复制一个字母
    y3l    复制三个字母
    yw     复制一个单词
    y3w    复制三个单词
    yy     复制一整行
    y3y     复制三行
    c      剪切
    cl
    c3l
    cw
    c3w
    cc
    c3c
    注意:当用c做剪切动作后,vim会进入插入模式如果需要粘贴那么要按ESC退出插入模式然后按P粘贴
    d        删除
    dl
    d3l
    dw
    d3w
    dd
    d3d
    p       粘贴
    u       撤销
    ctrl+r      恢复
  4. vim的可视化模式
    ctrl+v    进入可视化模式
    在这里插入图片描述
    可视化模式的批量添加
    (1) ctrl+v 进入可视化模式选中要添加字符所在列
    在这里插入图片描述
    —>按" I "进入插入模式 —>写入字符 —>按ESC>批量添加字符出现
    在这里插入图片描述
    (2) ctrl+v 进入可视化模式,shift+i可再切换会插入模式
  5. 字符的替换
    : s/原字符/替换后字符      替换当前光标所在行的第一个关键字
    :s/root/student
    在这里插入图片描述
    : s/原字符/替换后字符/g     替换当前光标所在行的所有关键字
    :s/root/student/g
    在这里插入图片描述
    : %s/原字符/替换后字符     每一行出现的第一个关键字
    : %s/原字符/替换后字符/g    全文替换,s所有行,g表示所有列
    : 3,7s/原字符/替换后字符/g    替换第三行到第五行的关键字
    :3,7s/root/student/g
    在这里插入图片描述
    : /lp/,/halt/s/sbin/hello/g      替换lp字符和halt字符之间的所有关键字
    :/lp/,/halt/s/root/student/g
    在这里插入图片描述
    ?字符串             在文本中从下至上搜索该字符串
    /字符串             在文本中从上至下搜索该字符串
  6. 在vim中编写多个文件
    ➢vim file   (进入之后)
    :sp file1   同时编辑file和file1
    在这里插入图片描述
    ctrl+w(松开) 上|下|左|右    光标在窗口之间的移动
    ctrl+w(松开)+s        上下分屏(分屏内容一样)
    ctrl+w(松开)+v        左右分屏(分屏内容一样)
    在这里插入图片描述
    ctrl+w(松开)+c        关闭光标所在的屏幕
    注意:不能在insert下做此命令,可按esc之后再做尝试。关不掉时可用:wq等命令
  7. 光标移动及字符搜索
    (1)光标的移动
    :数字     光标移动到指定的行
    HOME    光标移动到行首
    END     光标移动到行尾
    G      光标移动到最后一行
    gg      光标移动到第一行
    (2)搜索字符
    /关键字   则关键字会高亮显示,想要去掉高亮时可以 /不存在的单词、
    /hello
    在这里插入图片描述
    n      向下匹配 (匹配不了时,可能是当前输入法不是英文)
    N      向上匹配
  • 插入模式
    i    光标所在位置插入
    I    光标所在行的行首插入
    A    光标所在行行尾插入
    a    光标所在字符的下个字符插入
    s    删除光标所在字符插入
    S    删除光标所在行插入
    o    光标所在行的下一行插入
    O    光标所在行的上一行插入
  • 退出模式
    :w    保存
    :q    退出,在打开文件后没有对文件做任何修改时可使用
    :wq   退出保存,在对文件修改后并保存内容时使用
    :q!    强制退出,在对文件做修改后要放弃修改时使用
    :wq!   强制退出保存,在对属于自己的文件或你时root用户时使用

三、linux中管理输入输出

  • 输入重定向
    命令 <  文件         将文件作为命令的标准输入
    命令 <<  分界符       从标准输入中读入,直到遇到分界符才停止
    命令 < 文件1 >  文件2    将文件1作为命令的标准输入并将标准输出到文件2
  • 输出重定向
    命令 > 文件   重定向正确输出
    命令 2> 文件   重定向错误输出
    命令 &> 文件   重定向所有输出
    提示:在Linux系统中,正确输出的编号为1(可省略),错误输出编号为2
    例:
    注意:要用student用户登陆系统
    ➢find  /etc/  -name  passwd     此命令在student用户下执行因为权限问题会报错
    ➢find  /etc  -name  passwd  >  file
    在这里插入图片描述
    ➢find  /etc  -name  passwd  2>  file
    在这里插入图片描述
    ➢find  /etc  -name  passwd  &>  file
    在这里插入图片描述
    注意:若file里本身有东西,则会覆盖掉文件本身的内容
  • 输出追加
    追加会把定向的输出放到原文件最后不会覆盖原文件
    命令 >> 文件
    命令 2>> 文件
    命令 &>> 文件
    例:
    ➢find  /etc  -name  passwd  >>  file    不会覆盖file的内容
    ➢find  /etc  -name  passwd  2>>  file.err
    在这里插入图片描述
    在这里插入图片描述
    补充:
    ➢echo hello world > file    将hello world导入file
    注意:若file本身有内容,则会覆盖掉,将>换成>>则不会覆盖掉,会把相应的输出放到文件的最后
    ➢>  file          清空文件内容
    在这里插入图片描述
    ➢命令 2>&1 文件     将编号为2的错误输出转换成编号为1的正确输出
    在这里插入图片描述
    ➢命令 >/dev/null 文件   表示屏蔽正确内容
    在这里插入图片描述
    ➢命令 2>/dev/null文件   表示屏蔽错误输出
    在这里插入图片描述

四、管道符(|)

|    把第一条命令的正确输出变成第二条命令的输入,系统中错误的输出是无法通过管道的

➢ls /bin  |  wc  -l          统计/bin中有多少文件
在这里插入图片描述
tee    将输出复制一份到指定位置
例:将date命令的输出复制一份到 hui 并且输出显示行号
在这里插入图片描述
➢find /etc/ -name passwd 2>&1  | tee file | wc -l
例:将passwd文件里错误输出的编号2转换成1(内容不变),并复制一份到指定文件,再统计行数输出

在这里插入图片描述

你可能感兴趣的文章
.NET Core开发实战(第21课:中间件:掌控请求处理过程的关键)--学习笔记(下)...
查看>>
对比Java和.NET多线程编程
查看>>
[头脑风暴] 解读Docker Bridge网络模型
查看>>
集成平台集群任务动态分派
查看>>
【.net core】电商平台升级之微服务架构应用实战
查看>>
【翻译】.NET 5 Preview 1 发布
查看>>
使用GUI工具Portainer.io管控Docker容器
查看>>
Abp vNext发布v2.3!
查看>>
.NET Core开发实战(第27课:定义Entity:区分领域模型的内在逻辑和外在行为)--学习笔记...
查看>>
BeetleX之vue-autoui自匹配UI插件
查看>>
.NET Core开发实战(第28课:工作单元模式(UnitOfWork):管理好你的事务)--学习笔记...
查看>>
如何用 Blazor 实现 Ant Design 组件库?
查看>>
DotNetCore Web应用程序中的Session管理
查看>>
从业务需求抽象成模型解决方案
查看>>
Kafka
查看>>
Magicodes.IE 2.2发布
查看>>
应用交付老兵眼中的Envoy, 云原生时代下的思考
查看>>
.NET 开源项目 StreamJsonRpc 介绍[上篇]
查看>>
.NET Core微服务开发选项
查看>>
探讨NET Core数据进行3DES加密或解密弱密钥问题
查看>>