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 -l或sudo 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. Redis主从&哨兵集群搭建

    主从集群 在搭建主从集群前,我们先把Redis安装起来: #解压Redis压缩包 [root@master lf]# tar -zxvf redis-6.2.1.tar.gz -- #安装gcc [r ...

  2. Mybatis的Dao层实现原理

    1.Mybatis的Dao层实现 1.1 传统开发方式 1.1.1编写UserDao接口 public interface UserDao { List<User> findAll() t ...

  3. day9.函数2

    一.函数对象 函数是第一类对象,第一等公民,函数对象即函数可以被当作变量去用. 具体分为四个方面: 1.可以被赋值 def func(): print('from func') f = func pr ...

  4. Dropping Balls UVA - 679

      A number of K balls are dropped one by one from the root of a fully binary tree structure FBT. Eac ...

  5. Day02_14_可变长参数

    Java 可变参数 一个方法中只能有一个可变参数 它必须是该方法的最后一个形参(必须放在参数列表最后一个的位置) 传递给可变参数的数据类型必须一致 实例 public class 可变长参数 { pu ...

  6. 基于.Net Core 5.0 Worker Service 的 Quart 服务

    前言 看过我之前博客的人应该都知道,我负责了相当久的部门数据同步相关的工作.其中的艰辛不赘述了. 随着需求的越来越复杂,最近windows的计划任务已经越发的不能满足我了,而且计划任务毕竟太弱智,总是 ...

  7. Linux/Unix 常用的 15 类别名(alias)

    背景 最近在整理 Linux 运维基线,整理记录下常用的 alias 设置. alias alias 命令用于设置指令的别名.用于简化较长的命令. 语法 alias [别名]=[指令名称] 示例:al ...

  8. KMP算法:next和nextval值计算

    KMP算法的next和nextval值计算 先看看next数据值的求解方法 例:下标从1开始(若题中给定下标为0开始,把所有值-1即可) next数组的求解方法:根据前一个字符next,一直循环找到第 ...

  9. Jsoup-基于Java实现网络爬虫-爬取笔趣阁小说

    注意!仅供学习交流使用,请勿用在歪门邪道的地方!技术只是工具!关键在于用途! 今天接触了一款有意思的框架,作用是网络爬虫,他可以像操作JS一样对网页内容进行提取 初体验Jsoup <!-- Ma ...

  10. 关于YiII框架的扩展memcache中set设置时间就get查询失效的解决方案(版本是1.1.20)

    0x01 前言 在使用Yii框架的扩展memcache缓存的时候,存储数据有一个set方法,来看一下set方法的原型: public boolean set(string $id, mixed $va ...