nux学习笔记:有用的linux命令

 发表于 2018-06-25 |  分类于 linux|

 字数统计: 1,269 |  阅读时长 ≈ 6

写在前面

这着笔记,整理一些网上搜集到有用的linux笔记。

sosreport命令

sosreport命令用于收集系统构架及配置信息,并打包输出为诊断文档。当我们系统中出现问题,自己无法搞定的时候,可以使用这个命令搜集全面的系统诊断信息。

安装sosreport

1
[root@local-linux02 ~]# yum install -y sos

使用

1
2
3
4
5
6
7
8
9
10
11
//生成报告  期间会有几次提示,直接enter即可
[root@local-linux02 sosreport]# sosreport

//复制报告到指定文件夹
[root@local-linux02 sosreport]# mkdir -p /home/sosreport && cp /var/tmp/sosreport-local-linux02-20180625142856.tar.xz /home/sosreport/

//解压报告
[root@local-linux02 sosreport]# tar -Jxvf sosreport-local-linux02-20180625142856.tar.xz

//重命名报告
[root@local-linux02 sosreport]# mv sosreport-local-linux02-20180625142856 sosreport
  • 查看报告

1
2
3
4
[root@local-linux02 sosreport]# cat uname
Linux local-linux02 3.10.0-862.3.2.el7.x86_64 #1 SMP Mon May 21 23:36:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@local-linux02 sosreport]# cat uptime
14:29:04 up 23:09, 1 user, load average: 0.22, 0.08, 0.06

diff命令

用来比较两个文件的异同,常见用法有两种:

用法一: diff –brief 判断两个文件是否相同

  • 文件准备a.txt、b.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@local-linux02 test]# cat a.txt
www.baidu.com
www.163.com
www.qq.com
www.yaho.com
www.google.com
[root@local-linux02 test]# cat b.txt
www.baidu.com
www.163.com
www.qq.com
www.yahoo.com
www.google.com
cafevf
3e2edwefew

查看是否相同

1
2
[root@local-linux02 test]# diff --brief a.txt b.txt
Files a.txt and b.txt differ

用法二: diff -c 判断文件哪里不同

stat 命令 和 touch 命令

注意:这里有一个非常重要的知识点,就是linux文件系统的三个时间。

mtime 文件内容的修改时间;

ctime 文件权限或属性的更改时间;

atime 文件的读取时间;

stat 命令用来查看文件时间信息。

命令行格式:

1
stat [fileName]

示例:

1
2
3
4
5
6
7
8
9
[root@local-linux02 ~]# stat anaconda-ks.cfg
File: ‘anaconda-ks.cfg’
Size: 1421 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d Inode: 25165890 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2018-06-25 14:28:57.699307060 +0800
Modify: 2018-04-03 19:01:25.048986365 +0800
Change: 2018-04-03 19:01:25.048986365 +0800
Birth: -

touch 命令 用来新建文件或设置文件的时间。

命令行格式:

1
touch [参数] [filename]
参数 说明
-a 仅更改“读取时间” atime
-m 仅更改“修改时间” mtime
-d 同时更改atime和mtime

示例:先用ls -l 查看文件的mtime,之后修改文件,最后在通过touch -d指定文件的mtime和atime

1
2
3
4
5
6
7
8
9
10
11
12
13
//通过ls -l查看文档的mtime
[root@local-linux02 test]# ls -l a.txt
-rw-r--r-- 1 root root 65 Jun 25 15:06 a.txt

//修改文档内容
[root@local-linux02 test]# echo 'this is test' >> a.txt
[root@local-linux02 test]# ls -l a.txt
-rw-r--r-- 1 root root 78 Jun 25 15:23 a.txt

//touch -d设置mtime和atime
[root@local-linux02 test]# touch -d '2018-6-25 15:06' a.txt
[root@local-linux02 test]# ls -l a.txt
-rw-r--r-- 1 root root 78 Jun 25 15:06 a.txt

dd 命令:通过数据块的大小和格式来生成文件

命令行格式:

1
dd [选项]

常见选项包括:

  • if =输入文件(或设备名称);

  • of =输出文件(或设备名称);

  • bs = bytes 同时设置读/写缓冲区的字节数(等于设置ibs和obs);

  • count=blocks 只拷贝输入的blocks块;

常见用法:

应用场景一:生成swap交换空间

1
2
3
4
5
6
7
8
9
10
11
//创建一个大小为256M的文件:
dd if=/dev/zero of=/swapfile bs=1024 count=262144

//把这个文件变成swap文件:
mkswap /swapfile

//启用这个swap文件:
swapon /swapfile

//编辑/etc/fstab文件,使在每次开机时自动加载swap文件:
/swapfile swap swap default 0 0

说明:/dev/zero 是linux系统中一个很神奇的文件,它本身不占用系统存储空间,却可以生出任意大小的存储空间。

应用场景二: 制作光盘镜像

  • 第一步:将U盘插到电脑上,然后打开终端,输入命令sudo fdisk -lsudo parted -l命令查看U盘的设备号

  • 第二步:执行以下命令制作光盘镜像

1
sudo dd if=Downloads/ubuntu-14.10-desktop-amd64.iso of=/dev/sdb

grep 命令:与管道连用,用来过滤搜索结果

三种使用场景:

  • -n 显示搜索信息的行号
1
2
3
[root@local-linux02 ~]# cat /etc/passwd | grep -n root
1:root:x:0:0:root:/root:/bin/bash
10:operator:x:11:0:operator:/root:/sbin/nologin
  • ‘-v’ 反选,即不包括搜索关键词的行
1
2
3
4
5
6
7
[root@local-linux02 ~]# cat /etc/passwd | grep -v nologin
root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
user1:x:1000:1000::/home/user1:/bin/bash
user2:x:1001:1001::/home/user2:/bin/bash
  • ‘-i’ 忽略大小写
1
2
3
4
5
6
7
8
9
10
11
12
[root@local-linux02 test]# cat ~/test/a.txt | grep -i qq
www.qq.com
www.QQ.com

[root@local-linux02 test]#cat ~/test/a.txt
www.baidu.com
www.163.com
www.qq.com
www.yaho.com
www.google.com
this is test
www.QQ.com
  • 本文作者: Steve Yuan

sosreport命令 然后diff 正常的操作系统例如centos的更多相关文章

  1. 每天一个linux命令(49)--diff命令

    diff 命令是 Linux 上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff 在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件,diff ...

  2. linux 命令——36 diff(转)

    diff命令是 linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件.diff程序的输 ...

  3. Linux命令之---diff

    命令介绍 diff命令可以酌行比较纯文本文件内的内容,并输出文件的差异. 命令格式 diff [option] [file1] [file2] 举例子 1)比较俩文本文件 [root@king ~]# ...

  4. 使用sosreport命令生成诊断包

    [RHEL]-7-常用系统状态检测命令 引言 这篇文章介绍RHEL中最常用的几个系统状态检测命令,包括:网络状态.内存.主机名及其架构.系统负载及其用户登录状态等. 文章目录 0×1.查看网络状态 0 ...

  5. Linux命令之diff

    1.命令格式: diff[参数][文件1或目录1][文件2或目录2] 2.命令功能: diff命令能比较单个文件或者目录内容.如果指定比较的是文件,则只有当输入为文本文件时才有效.以逐行的方式,比较文 ...

  6. linux常用命令:diff 命令

    diff 命令是 linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件.diff程序的 ...

  7. Mac系统打开命令行终端及查看操作系统版本号的方法

    Mac系统打开命令行终端的方法: 应用程序 --> 实用工具 --> 终端 Mac系统终端查看操作系统版本号的方法: 输入:#more /System/Library/CoreServic ...

  8. git 命令 git diff 查看 Git 区域文件的具体改动

    查看 Git 区域文件的具体改动 git diff git status 只能让我们知道文件在 Git 区域内的改动状态,但如果我们想查看某个文件内具体改了什么(也可以理解为在不同 Git 区域中的差 ...

  9. linux的管道 |和grep命令以及一些其他命令(diff,echo,cat,date,time,wc,which,whereis,gzip,zcat,unzip,sort)

    linux提供管道符号“|”,作用是命令1的输出内容作为命令2的输入内容.通常与grep命令一起使用. 格式:命令1 |命令2 grep命令:全称为global regular expression ...

随机推荐

  1. 阳明-K8S训练营全部文档-2020年08月11日14:59:02更新

    阳明-K8S训练营全部文档 Docker 基础 简介 安装 基本操作 Dockerfile Dockerfile最佳实践 Kubernetes 基础 简介 安装 资源清单 Pod 原理 Pod 生命周 ...

  2. 【10.5NOIP普及模拟】sum

    [10.5NOIP普及模拟]sum 文章目录 [10.5NOIP普及模拟]sum 题目描述 输入 输出 输入输出样例 样例输入 样例输出 解析 code 题目描述 小x有很多糖果,分成了 N 堆,排成 ...

  3. [Fundamental of Power Electronics]-PART I-2.稳态变换器原理分析-2.3 Boost 变换器实例

    2.3 Boost 变换器实例 图2.13(a)所示的Boost变换器器是另一个众所周知的开关模式变换器,其能够产生幅值大于直流输入电压的直流输出电压.图2.13(b)给出了使用MOSFET和二极管的 ...

  4. 原来Java的发家史是这么回事

    java的诞生: 1991 年Sun公司成立了一个计算机开发小组,由James Gosling等人开发一款希望用于控制嵌入在有线电视交换盒.PDA等的微处理器的计算机语言,本来他们想直接扩展C++,后 ...

  5. 【设计模式】- 生成器模式(Builder)

    生成器模式 建造者模式.Builder 生成器模式 也叫建造者模式,可以理解成可以分步骤创建一个复杂的对象.在该模式中允许你使用相同的创建代码生成不同类型和形式的对象. 生成器的结构模式 生成器(Bu ...

  6. java面试一日一题:如何优化sql

    问题:请讲下在mysql下如何优化sql 分析:该问题主要考察对mysql的优化,重点考虑对索引优化的掌握. 回答要点: 主要从以下几点去考虑, 1.什么样的sql需要优化? 2.怎么对sql进行优化 ...

  7. kernel base

    基础知识 学习网址:ctfwiki 安全客 Kernel:又称核心 维基百科:在计算机科学中是一个用来管理软件发出的数据I/O(输入与输出)要求的电脑程序,将这些要求转译为数据处理的指令并交由中央处理 ...

  8. day7.文件处理

      @字符编码 见:https://zhuanlan.zhihu.com/p/108805502 一.文件基本操作 ''' 1.什么是文件     文件是操作系统提供给用户或者应用程序的一种操作硬盘的 ...

  9. Redis——急速安装并设置自启(CentOS)

    现状 对于开发人员来说,部署服务器环境并不是一个高频操作.所以就导致绝大部分开发人员不会花太多时间去学习记忆,而是直接百度(有一些同学可能连链接都懒得收藏).所以到了部署环境的时候就头疼,甚至是抗拒. ...

  10. 《疯狂Kotlin讲义》读书笔记6——函数和Lambda表达式

    函数和Lambda表达式 Kotlin融合了面向过程语言和面向对象语言的特征,相比于Java,它增加了对函数式编程的支持,支持定义函数.调用函数.相比于C语言,Kotlin支持局部函数(Lambda表 ...