Linux笔记

2021/9/9 linux
# linux 下 取进程占用 cpu 最高的前10个进程
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

# linux 下 取进程占用内存(MEM)最高的前10个进程
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head
1
2
3
4
5

# 一、 查看当前路径

pwd : 查看当前位置

[root@mb ~]# pwd
/root
1
2

cd : 切换目录

[root@mb ~]# cd /etc/
[root@mb etc]#
1
2

ls : 目录列表

[root@mb ~]# ls -ld /etc
drwxr-xr-x. 75 root root 8192 Dec  3 14:01 /etc

ls #表示查看当前目录下的文件
ls -l #表示查看当前目录下的详细信息
ls -a #表示查看当前目录下的所有文件(包含隐藏文件)
ls -la #表示查看当前目录下的所有文件(包含隐藏文件)的详细信息
ls -lh #h是以适当的单位来显示文件的大小 ls -lh表示查看当前目录下的文件的详细信息,并以合适单位显示文件大小 
 
ls -l / #表示查看根目录"/"下文件的详细信息
 
ls /etc #表示查看目录/etc下的文件
 
ls --help #查看命令的帮助文档
--help参数:所有linux上的命令都有,但写法上有如下几种:
 (1)--help
  (2)--h
  (3)-help
  (4)-h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

ll : 目录列表,长格式

ll命令:它和ls -l命令功能相同,但是不是所有的linux上都默认安装

[root@VM-0-5-centos yuanlu]# ll
total 0
-rw-r--r-- 1 root root 0 Mar  4 13:51 hello.md
1
2
3
4
5

# 二、查看文件

# 1、常用命令

cat : 查看文本内容

[root@mb ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

[root@mb ~]# cat -n /etc/redhat-release 1  CentOS Linux release 7.5.1804 (Core)
1
2
3
4

tail [参数] 文件路径 #从文件的末尾查看文件内容

tail -n 文件路径 # n是一个正整数,表示查看文件的后n行数据
tail -15 一个文件.txt #查看文件后15行内容
 
tail -f 文件路径 #动态的查看文件的最后几行内容(查看文件时,等待文件更新,如果文件更新了,会显示出新的内容)

常用场景:
tail -100f ./log.log    #动态查看日志

tail -f 一般用来查看日志文件 按CTRL+C或才CTRL+Z退出查看
1
2
3
4
5
6
7
8
9

# 1、不常用命令

more 文件路径 #分页查看文件内容

more 一个文件.txt #分页查看当前目录下一个文件.txt文件的内容

#按空格或回车,会继续加载文件内容,按q退出查看

#当加载到文件末尾时,会自动退出查看
1
2
3
4
5

less 文件路径 #分页查看文件内容

less 一个文件.txt #分页查看文件内容,按空格继续加载文件,按q退出查看,不会自动退出查看
1

head [参数] 文件路径 #从文件开始查看文件

head 一个文件.txt #查看文件的前10行内容
 
head -n 文件路径 # n是一个正整数,表示查看文件的前n行数据
head -20 一个文件.txt #查看文件的前20行内容
1
2
3
4

# 三、操作目录

mkdir:新建目录

格式:mkdir [-p] [/路径/]目录名…,目录路径可以是绝对路径也可以是相对路径
[-p]:建立父目录

mkdir创建目录时,只有在目录的上级目录存在时,才会创建

mkdir -p 目录#创建目录时,如果没有父目录,会创建父目录,递归地创建目录

mkdir data #在当前目录下创建一个data目录
mkdir ./dir #在当前目录下创建一个dir目录
mkdir /root/tmp #在/root目录下创建一个tmp目录

1
2
3
4
5
6
7
8
9
10
11

rmdir:删除目录

rmdir [参数] 目录路径 #删除目录命令,rmdir默认只能删除空目录
 
rmdir ./dir #删除当前目录下的dir目录
 
rmdir -p 目录路径 #表示删除目录和它的父目录(目录要是一个空目录)
rmdir -p a/b/c #删除当前目录下的a/b/c目录
1
2
3
4
5
6

# 四、操作文件

touch :创建文件

touch 文件路径

touch 1.txt #在当前目录下创建一个1.txt文件
touch /root/2.txt #在/root目录下创建一个2.txt文件
1
2
3
4

命令>和>> :输出内容到文件,同时可创建文件

命令>>>都能将内容输出到文件中,>表示覆盖(会删除原文件内容) >>表示追加

echo Hello World > 1.txt
#将Hello World输出到当前目录下的1.txt文件
#如果当前目录下没有1.txt文件会创建一个新文件
#如果当前目录下有1.txt,则会删除原文件内容,写入Hello World

echo 1234 >> 1.txt 
#将1234追加到当前目录下的1.txt中,如果文件不存在会创建新文件
1
2
3
4
5
6
7
8
9

rm:删除文件

rm [参数] 路径 #删除命令
常用参数r:递归删除(含目录)、-f:强制删除

rm 1.txt
#删除当前目录下的1.txt文件,删除时会提示,是否删除如果输入y表示删除,输入n表示不删除

rm -f /root/2.txt 
#-f表示强制删除,不会提示,强制删除/root目录下的2.txt

rm -r a/       #递归的删除当前目录下a目录下的所有内容

rm -rf a/      #强制删除当前目录下a目录及a目录下的所有内容
 
rm -rf *       #删除当前目录下的所有内容
rm -rf a/*     #删除当前目录下a目录下的所有内容
rm -rf *.txt   #删除当前目录下的所有txt文件
rm -rf *s*     #删除当前目录下所有名字中包含s的文件或文件夹
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

mv: 移动或者改名字

mv [选项]… 原文件… 目标路径

[root@mb ~]# echo 111 > /root/1.txt
[root@mb ~]# mv  /root/1.txt  /etc/passwd  /opt/
[root@mb ~]# ls /opt/
1.txt  passwd

在移动时候,可支持多个参数,永远会把最后一个参数作为目标,其他所有参数都作为源
1
2
3
4
5
6
7
8

cp:复制文件

cp [选项]… 原文件… 目标路径

常用命令选项 -r:递归,复制目录时必须有此选项

[root@mb ~]# cp -r /home/ /opt/ #复制目录
[root@mb ~]# ls /opt/
1.txt  home  passwd

在复制时候,可支持多个参数,永远会把最后一个参数作为目标,其他所有参数都作为源

[root@mb ~]# cp /etc/fstab  /etc/hosts /opt/
[root@mb ~]# ls /opt
1.txt  fstab  home  hosts  passwd
1
2
3
4
5
6
7
8
9
10
11
12
13

alias: 别名

• 查看已设置的别名 – alias [别名名称]

• 定义新的别名 – alias 别名名称= ‘实际执行的命令行’

• 取消已设置的别名 – unalias [别名名称]

[root@VM-0-5-centos home]# alias pg='ps -ef | grep'
[root@VM-0-5-centos home]# 
[root@VM-0-5-centos home]# pg mysql
mysql      937     1  0 Feb19 ?        00:35:41 /usr/sbin/mysqld
root     28998  2271  0 17:41 pts/3    00:00:00 grep --color=auto mysql
[root@VM-0-5-centos home]# 
1
2
3
4
5
6

tar:打包和备份的归档工具(压缩、解压)

常用参数
– -c:创建归档
– -x:释放归档
– -f:指定归档文件名称,必须放在所有选项的最后
– -z、-j、-J:调用 .gz、.bz2、.xz 格式的工具进行处理
– -t:显示归档中的文件清单
– -C:指定释放路径
-- -exclude=<范本样式>	排除符合范本样式的文件
-- -remove-files	归档/压缩之后删除源文件

[root@linuxcool ~]# tar -cvf linuxcool.tar linuxcool --remove-files
# 打包文件之后删除源文件

[root@linuxcool ~]# tar -zcvf log.tar.gz linuxcool.log
#打包文件以后,以 gzip 压缩:

tar -xzf all.tar
#解压
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

# 五、文件编辑

vi/vim:编辑文件

vim不是所有的linux系统都默认安装有的需要自己安装,命令如下:
yum -y install vim

vi基本全部自带,两个命令在使用上几乎完全一样
1
2
3
4

vim命令总体分为两类:命令模式和编辑模式

# vi/vim命令模式

yy:复制光标当前行
p:粘贴
dd:删除光标当前行
$:光标跳到当前行的行尾
^:光标跳到当前行的行首
 
:s/原字符串/新字符串/:替换光标当前行内容
:%s/原字符串/新字符串/g:全文替换 #g表示global i表示ignore忽略大小写
 
/要查找的内容:从光标当前行向后查找内容
/d #在文件中查找d字母
?要查找的内容:从光标当前位置向前查找内容
?d #查找文件中的d字母
CTRL+F:向下翻1页
CTRL+B:向上翻1页
 
:set nu:显示文件的行号
:set nonu: 去掉行号显示
u:撤消
 
**:set ff :显示文件的格式 #unix表示在unix上的文件 dos表示文件是windows上的文件**
:w :表示保存文件
:q :表示退出vim命令
:wq:保存并退出
:w!:强制保存
:q!:强制退出但不保存
:wq!:强制保存并退出
i:表示进入编辑模式,并且光标在当前行
o:表示进入编辑模式,并且光标出现的当前行的下一行(新行)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

# vi/vim编辑模式

按下i或者o 进入到编辑模式,按下ESC键进入命令模式

。。。未完,待续

留言:
    更新日期: 2022/2/8 下午11:10:51