【运维知识基础篇】Linux常用基础命令(三)

简介: 【运维知识基础篇】Linux常用基础命令(三)

今天继续给大家更新Linux常用命令,学Linux不学命令等于没学,今天更新的有echo、>、>>、{}、head、tail、grep、wc、lscpu、free、df、uptime、w。

1.echo 文件   # 输出后面内容到文件
echo 内容 #直接输出内容到屏幕
echo -n #输出内容不换行
echo -e #激活特殊符号 后面字符串加双引号、
特殊符号:\t tab键 \n 换行符 
echo 内容 > 文件 输出内容到文件中,文件不存在则文件自动创建,源文件内容会被覆盖
echo 内容 >> 文件 输出内容到文件中,文件不存在则文件自动创建,追加内容到文件的底部
2.>     #作用,接收所有输出的内容,只接收执行正确的结果,命令错误还是文件不存在都不行
>>    #作用,追加所有输出的内容
>1.txt 快速清空1.txt
其实前面省略了1
2>错误信息覆盖
2>>错误信息追加
执行命令将不同的结果,输入到同一文件中,在后面追加即可
示例1:将查询koten.txt的详细信息不管正确还是错误都输入到1.txt当中
[root@VMware-koten ~]#ll koten.txt >>1.txt 2>> 1.txt 
[root@VMware-koten ~]#ll koten.txt >>1.txt 2>&1 #简写
[root@VMware-koten ~]#ll koten.txt &>>1.txt #简写
示例2:通过结果可以看出是先创建,再ll查看再写入
[root@VMware-koten ~]#ll
total 0
[root@VMware-koten ~]#ll > 1.txt
[root@VMware-koten ~]#cat 1.txt 
total 0
-rw-r--r--. 1 root root 0 Feb 28 10:14 1.txt
[root@VMware-koten ~]#
小结:
>      #正确的输出重定向 只接收正确结果 先清空后写入
>>     #正确追加输出重定向 只接收正确结果 追加内容
2>     #错误的输出重定向 只接收错误结果 先清空后写入
2>>    #错误追加输出重定向 只接收错误结果 追加内容
注意:>>koten.txt 2>&1 两个顺序可以调整 也可以直接简写成&>>koten.txt
简写的时候几个大于符号决定是追加还是写入看前面那个
后面的一个大于符号是固定的语法。
3.{}    #生成序列,数字,字母,不连续的数字或者字符串和其他字符串拼接。
echo、touch、mkdir、ls都可以用
示例1:
[root@VMware-koten ~]#echo {001..10}
001 002 003 004 005 006 007 008 009 010
示例2:生成字符序列
[root@VMware-koten ~]#mkdir {a..c}  #相当于执行 mkdir a b c
[root@VMware-koten ~]#ll
total 3
drwxr-xr-x. 2 root root  6 Feb 28 10:53 a
drwxr-xr-x. 2 root root  6 Feb 28 10:53 b
drwxr-xr-x. 2 root root  6 Feb 28 10:53 c
[root@VMware-koten ~]#
示例3:数字序列和其他字符串拼接,字母序列同理
[root@VMware-koten ~]#echo {1..3}.txt
1.txt 2.txt 3.txt
[root@VMware-koten ~]#
示例4:序列和序列拼接
[root@VMware-koten ~]#echo {1..3}{a..c}
1a 1b 1c 2a 2b 2c 3a 3b 3c
[root@VMware-koten ~]#echo {a..c}{1..3}
a1 a2 a3 b1 b2 b3 c1 c2 c3
[root@VMware-koten ~]#
示例5:备份 #只是说有这种方法,其实挺麻烦 如果在没有的目录下touch,需要先创建目录
[root@VMware-koten ~]#touch 1.txt
[root@VMware-koten ~]#echo 1.txt{,_bak}
1.txt 1.txt_bak
[root@VMware-koten ~]#cp 1.txt{,_bak}
[root@VMware-koten ~]#ll
total 0
-rw-r--r--. 1 root root 0 Feb 28 11:26 1.txt
-rw-r--r--. 1 root root 0 Feb 28 11:26 1.txt_bak
[root@VMware-koten ~]#
示例6:指定递增增加的数量
[root@VMware-koten ~]#echo {1..10..2}
1 3 5 7 9
[root@VMware-koten ~]#
4.head 文件 #默认显示文件的前10行
head -n 3 #显示文件的前3行 简写为head -3,省略n
示例1:配合管道符与其他命令配合显示
[root@VMware-koten ~]#ip a|head -3
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
[root@VMware-koten ~]#
只要是能输出到屏幕上的都能给管道,将前面命令输出作为后续命令的输入
head可以直接接文件,如果没有文件则将执行结果传递给管道
[root@VMware-koten ~]#head 1.txt|head -3 #顺序不能错
1
2
3
[root@VMware-koten ~]#
5.tail 文件 用法跟head一样,一个显示头一个显示尾
tail -f 文件名称 #实时显示文件最新的内容,实时显示文件变化 f是follow
tail -F 文件名称 #可以监控不存在的文件,等着这个文件创建
tailf   文件名称 #作用同上
ctrl+c退出实时监控
6.grep #模糊过滤文件内容
grep “过滤的内容” 文件 
grep -i “过滤的内容” 文件 #过滤文件的内容忽略大小写
示例1:查看ip中的10.0.0.200是否出现
[root@VMware-koten ~]#ip add|grep 10.0.0.200
    inet 10.0.0.200/24 brd 10.0.0.255 scope global eth0
[root@VMware-koten ~]#
示例2:过滤文件中包含“Failed”的行 直接过滤区分大小写
[root@VMware-koten ~]#grep "Failed" /var/log/secure
Feb 27 10:18:12 VMware-koten sshd[20161]: Failed password for root from 10.0.0.1 port 53333 ssh2
Feb 27 17:10:39 VMware-koten sshd[34342]: Failed password for root from 10.0.0.1 port 57720 ssh2
[root@VMware-koten ~]#
[root@VMware-koten ~]#alias grep='grep -i --color=auto' #临时更改
永久更改需要加环境变量
示例3:过滤文件中包含“Failed”的行 忽略大小写
[root@VMware-koten ~]#grep -i "Failed" /var/log/secure
Feb 27 10:18:10 VMware-koten unix_chkpwd[20164]: password check failed for user (root)
Feb 27 10:18:12 VMware-koten sshd[20161]: Failed password for root from 10.0.0.1 port 53333 ssh2
Feb 27 17:10:38 VMware-koten unix_chkpwd[34345]: password check failed for user (root)
Feb 27 17:10:39 VMware-koten sshd[34342]: Failed password for root from 10.0.0.1 port 57720 ssh2
[root@VMware-koten ~]#
示例4:过滤文件中包含“Failed”的行,统计行数
[root@VMware-koten ~]#grep -i "Failed" /var/log/secure|wc -l
4
[root@VMware-koten ~]#
[root@VMware-koten ~]#grep -c "Failed" /var/log/secure
4
[root@VMware-koten ~]#
7.wc -l 文件 #查看当前文件的总行数
文件可以放到前面也可以放到后面
[root@VMware-koten ~]#wc -l 1.txt 
20 1.txt
[root@VMware-koten ~]#cat 1.txt |wc -l
20
[root@VMware-koten ~]#
8.lscpu #查看cpu相关配置信息
[root@VMware-koten ~]#lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                1            #总核心数
On-line CPU(s) list:   0            #第一个核心以0来表示
Thread(s) per core:    1
Core(s) per socket:    1            #cpu的个数
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 158
Model name:            Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
Stepping:              10
CPU MHz:               2208.004
BogoMIPS:              4416.00
Hypervisor vendor:     VMware
Virtualization type:   full
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              9216K
NUMA node0 CPU(s):     0
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 arat md_clear spec_ctrl intel_stibp flush_l1d arch_capabilities
[root@VMware-koten ~]#
扩展:一般服务器是2-4个cpu,cpu中的核决定的是并发能力,几核就好比几个工人同时工作
9.free #查看内存 必会!!!
[root@VMware-koten ~]#free
              total        used        free      shared  buff/cache   available
Mem:        2027868      204076     1712472        9688      111320     1687868
Swap:       1048572           0     1048572
[root@VMware-koten ~]#
注意:free与available是因为内存欺骗行为
[root@VMware-koten ~]#free -h #换算单位查看
              total        used        free      shared  buff/cache   available
Mem:           1.9G        199M        1.6G        9.5M        108M        1.6G
Swap:          1.0G          0B        1.0G
[root@VMware-koten ~]#
10.df-h #查看磁盘 看不到swap,因为swap是内存了,用到才会显示磁盘 df全程是disk file
[root@VMware-koten ~]#df -h
Filesystem #磁盘系统      Size  Used Avail Use% Mounted on #挂载点
devtmpfs                 980M     0  980M   0%     /dev
tmpfs                    991M     0  991M   0%     /dev/shm
tmpfs                    991M  9.5M  981M   1%     /run
tmpfs                    991M     0  991M   0%     /sys/fs/cgroup
/dev/sda3                 19G  1.9G   17G  10%     /
/dev/sda1                197M  110M   88M  56%     /boot
tmpfs                    199M     0  199M   0%     /run/user/0
[root@VMware-koten ~]#
11.uptime #显示系统负载
[root@VMware-koten ~]#uptime
 11:54:23 up  1:00,  1 user,  load average: 0.00, 0.01, 0.05
 当前时间   当前操作系统运行的时长  当前登录用户  平均负载 1分钟 5分钟 15分钟
主要是看1分钟,5分钟和15分钟,过于繁忙要分情况去检查,看是正常访问还是有人攻击
负载是衡量操作系统的繁忙程度,当负载数字达到cpu核心总数,说明非常繁忙
4核心==负载不能超过4
1种情况 服务器对用户不能超过核心数 会卡
2种情况 负载自身做运算 不对用户的话随便超 这个叫服务器的充分运用
[root@VMware-koten ~]#
12.w #显示系统负载及登录的一些信息 系统中最短命令 最有个性 不然执行提示窗口太小,施展不开
[root@VMware-koten ~]#w
w: 56 column window is too narrow
[root@VMware-koten ~]#w
 12:02:51 up  1:08,  1 user,  load average: 0.03, 0.03, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    10.0.0.1         10:56    3.00s  0.13s  0.03s w
[root@VMware-koten ~]#
TTY是虚拟机登录的
pts是远程连接的
from来源地址是本机VMnet8的ip地址
curl cip.cc   curl ifconfig.me  查看本地公网的IP地址
如果是在阿里云服务器下w,form显示自己路由器的公网IP
what是当前用户在干嘛
查询信息命令小结:
查看cpu:lscpu
查看内存:free -h
查看磁盘:df -h
查看负载:uptime
查看负载和登录信息:w

我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
目录
相关文章
|
4天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
21 3
|
4天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
16 2
|
11天前
|
缓存 监控 Linux
|
15天前
|
Linux Shell 数据安全/隐私保护
|
16天前
|
域名解析 网络协议 安全
|
4天前
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
19 3
|
7天前
|
Linux
在 Linux 系统中,`find` 命令是一个强大的文件查找工具
在 Linux 系统中,`find` 命令是一个强大的文件查找工具。本文详细介绍了 `find` 命令的基本语法、常用选项和具体应用示例,帮助用户快速掌握如何根据文件名、类型、大小、修改时间等条件查找文件,并展示了如何结合逻辑运算符、正则表达式和排除特定目录等高级用法。
32 6
|
8天前
|
监控 Linux 开发者
如何在 Linux 中优雅的使用 head 命令,用来看日志简直溜的不行
`head` 命令是 Linux 系统中一个非常实用的工具,用于快速查看文件的开头部分内容。本文介绍了 `head` 命令的基本用法、高级用法、实际应用案例及注意事项,帮助用户高效处理文件和日志,提升工作效率。
21 7
|
9天前
|
监控 Linux
Linux常用命令-2
本文继续介绍Linux常用命令,涵盖目录操作、文件操作、系统信息和进程管理等类别。具体包括mkdir、rmdir、cp、mv、rm、touch、whereis、whatis、dmesg、free、date、cal、ps、kill、killall和top等命令的使用方法和常用参数。
38 7
|
8天前
|
监控 Linux Perl
Linux 命令小技巧:显示文件指定行的内容
在 Linux 系统中,处理文本文件是一项常见任务。本文介绍了如何使用 head、tail、sed 和 awk 等命令快速显示文件中的指定行内容,帮助你高效处理文本文件。通过实际应用场景和案例分析,展示了这些命令在代码审查、日志分析和文本处理中的具体用途。同时,还提供了注意事项和技巧,帮助你更好地掌握这些命令。
21 4

热门文章

最新文章