Linux常用命令详解

Linux常用命令详解

cat

显示指定文件里的内容

bash 复制代码
cat hello.txt

tac

倒着输出

bash 复制代码
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# cat test.c
aaaaaa
bbbbbbb
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# tac test.c
bbbbbbb
aaaaaa

在查看日志时非常重要

echo

echo可以打印字符串

bash 复制代码
echo 'hello Linux'

echo与cat的区别

echo把后边的内容当作字符串进行打印,cat是打印文件里的内容

如下图

cat <

echo "esasss" > ss.txt

echo "asas" >>ss.txt

重定向操作--只看操作

bash 复制代码
echo "hello world" > hello1.txt

两种情况

1.后续文件不存在,新建文件

2.后续文件存在,先清空再写入

如下

bash 复制代码
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# ll
total 32
drwxr-xr-x 2 root root 4096 Apr 13 21:17 ./
drwxr-xr-x 7 root root 4096 Apr 13 20:46 ../
-rw-r--r-- 1 root root    0 Apr 12 17:14 bit.txt
-rw-r--r-- 1 root root   18 Apr 12 17:19 hello.txt
-rw-r--r-- 1 root root   18 Apr 12 17:43 lll.txt
-rw-r--r-- 1 root root 9893 Apr 13 21:17 log.txt
-rw-r--r-- 1 root root   15 Apr 12 16:25 test.c
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# echo "hello world" > hello1.txt
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# cat hello1.txt
hello world

追加重定向

复制代码
>>就是追加重定向 就可以不清空原文件继续往文件内写入

如下

bash 复制代码
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# echo "hello world" > hello1.txt
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# cat hello1.txt
hello world
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# echo "hello world" >> hello1.txt
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# cat hello1.txt
hello world
hello world
root@iZf8z0u7einfoexqnx8yf5Z:~/113/lesson3# 

输入重定向

bash 复制代码
cat < hello1.txt

直接从文件中读取数据

more指令

语法:more [选项]

功能:more命令,功能类似cat

常用选项:

  • -n 指定输出行数
  • q 退出more
bash 复制代码
1 # 命令行输出多行文本
2 [whb@bite-alicloud test]$ cnt=0; while [ $cnt -le 2000 ]; do echo "hello bite"; let cnt++; done > temp.txt
3 
4 # -n指定输出行数
5 [whb@bite-alicloud test]$ more -10 temp.txt
6 hello bite
7 hello bite
8 hello bite
9 hello bite
10 hello bite
11 hello bite
12 hello bite
13 hello bite
14 hello bite
15 hello bite
16 --More--(0%)

less

less工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大

less的用法比起more更加的有弹性,在more的时候,我们并没有办法向前面翻,只能往后面看

但若使用了less时,就可以使用[pageup][pagedown]等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容

除此之外,在less里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

语法:less [参数] 文件

功能:less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。

选项:

  • -i 忽略搜索时的大小写
  • -N 显示每行的行号
  • /字符串:向下搜索"字符串"的功能
  • ?字符串:向上搜索"字符串"的功能
  • n:重复前一个搜索(与/或?有关)
  • N:反向重复前一个搜索(与/或?有关)
  • q:quit

我把第一行修改一下 改成bite666

复制代码
输入/666就会自动搜索到

date 指令

指定格式显示时间:date +%Y:%m:%d

用法:date [OPTION]... [+FORMAT]

在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下

  • %H:小时(00...23)
  • %M:分钟(00...59)
  • %S:秒(00...61)
  • %X:相当于%H:%M:%S
  • %d:日(01...31)
  • %m:月份(01...12)
  • %Y:完整年份(0000...9999)
  • %F:相当于%Y-%m-%d

head指令

head与tail就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head用来显示档案的开头至标准输出中,而tail想当然尔就是看档案的结尾。

语法:

head [参数]... [文件]...

功能:

head用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。

选项:

  • -n <行数> 显示的行数

举例:拿前二十行

tail指令

tail命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容.

语法:tail 必要参数 [文件]

功能:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

选项:

  • -f 循环读取
  • -n <行数> 显示行数

举例:(简单讲解重定向和管道)

拿后20行

那怎么拿中间的呢?

这里我们用到管道

管道就是在上个命令的基础上再进行下一次命令

拿到500-510行

管道就是在上个命令的基础上再进行下一次命令

模拟动态日志查看功能

wc -l显示行数

date 指令

指定格式显示时间:date +%Y:%m:%d

用法:date [OPTION]... [+FORMAT]

1.在显示方面

使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下

  • %H:小时(00...23)
  • %M:分钟(00...59)
  • %S:秒(00...61)
  • %X:相当于%H:%M:%S
  • %d:日(01...31)
  • %m:月份(01...12)
  • %Y:完整年份(0000...9999)
  • %F:相当于%Y-%m-%d

2. 在设定时间方面

date -s //设置当前时间,只有root权限才能设置,其他只能查看。

date -s 20080523 //设置成20080523,这样会把具体时间设置成空00:00:00

date -s 01:01:01 //设置具体时间,不会对日期做更改

date -s "01:01:01 2008-05-23" //这样可以设置全部时间

date -s "01:01:01 20080523" //这样可以设置全部时间

date -s "2008-05-23 01:01:01" //这样可以设置全部时间

date -s "20080523 01:01:01" //这样可以设置全部时间

3. 时间戳

时间戳

  • 时间戳:date +%s
  • 时间戳->时间:date -d@1508749502
    Unix时间戳(英文为Unix epoch,Unix time,POSIX time或Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒

find

  • Linux下find命令在目录结构中搜索文件,并执行指定的操作。
  • Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。
  • 即使系统中含有网络文件系统(NFS),find命令在该文件系统中同样有效,只你具有相应的权限。
  • 在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。

语法:find pathname -options

功能:用于在文件树中查找文件,并作出相应的处理(可能访问磁盘)

which指令

功能:搜索系统指定的命令

举例:

bash 复制代码
1 [whb@bite-alicloud test]$ which ls
2 alias ls='ls --color=auto'
3 /usr/bin/ls
4 [whb@bite-alicloud test]$ which pwd
5 /usr/bin/pwd

grep指令

语法:grep [选项] 搜寻字符串 文件

功能:在文件中搜索字符串,将找到的行打印出来

常用选项:

  • -i:忽略大小写的不同,所以大小写视为相同
  • -n:顺便输出行号
  • -v:反向选择,亦即显示出没有'搜寻字符串'内容的那一行

举例:

ps -ajx :查找进程

如果清屏后 想找到刚刚的进程 可以用grep

也可以查找文件内容如函数及其行数

grep -n

grep-v会过滤袋查找的

常用选项:

  • -i:忽略大小写的不同,所以大小写视为相同
  • -n:顺便输出行号
  • -v:反向选择,亦即显示出没有'搜寻字符串'内容的那一行

举例:

外链图片转存中...(img-As2RSHbT-1776245956281)

ps -ajx :查找进程

如果清屏后 想找到刚刚的进程 可以用grep

外链图片转存中...(img-m1LRNWEO-1776245956281)

也可以查找文件内容如函数及其行数

外链图片转存中...(img-5SuKbG4P-1776245956281)

grep -n

外链图片转存中...(img-vWpqF8HK-1776245956281)

grep-v会过滤袋查找的

相关推荐
高斯林.神犇2 小时前
五、注解方式管理bean
java·开发语言
SilentSamsara2 小时前
Linux 管道与重定向:命令行精髓的结构性解析
linux·运维·服务器·c++·云原生
the sun342 小时前
NFS 配置全指南 —— 从踩坑到手动挂载的完整落地
linux·运维·服务器·ubuntu
SilentSamsara2 小时前
Shell 脚本进阶:从能跑到写得优雅
linux·运维·服务器·自动化·ssh·bash
xiaoshuaishuai82 小时前
C# 实现“superpowers进化
运维·服务器·windows·c#
孙同学_3 小时前
【项目篇】高并发服务器 - 从 Buffer 到 TcpServer 构建高并发服务器引擎
运维·服务器
SilentSamsara3 小时前
Linux磁盘与存储管理:分区、LVM 与 IO 性能全栈分析
linux·运维·服务器·ssh·shell
IMPYLH10 小时前
Linux 的 pinky 命令
linux·运维·服务器·bash
dllxhcjla11 小时前
微服务全套
java