锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

【Linux】快速入门法宝~你值得拥有

时间:2022-09-21 11:30:00 q18j5a连接器

查阅命令帮助信息

man

man是manual的缩写,是Linux提供的手册包括大部分命令和函数的详细使用

man的操作建

操作键 功能说明
空格键 显示手册下一个屏幕内容
回车键 一行滚动手册页
b 回滚一屏
f 前滚一屏
q 退出
/内容 搜索/后面的内容
↑、↓ 向上或向下滚动

使用格式:

man 命令

举例:

[root@node100 ~]# man find 

help

显示命令帮助文本。

命令 --help

[root@node100 /]# find --help 

切换目录

cd

切换工作目录

选项命令常用 说明
cd 进入用户主目录
cd ~ 进入用户主目录
cd - 返回该目录前的目录
cd .. 返回上级目录(如果当前目录为"/",执行后还在"/";".."意思是上级目录)
cd ../.. 返回上两级目录
cd 相对路径 进入当前目录下的目录
cd 绝对路经 进入指定的绝对路径

例:进入指定路径:

[root@node100 ~]# cd /etc/ntp/ 

显示工作目录

pwd

对应英文(print work directory)用途:查看当前目录

[root@node100 ntp]# pwd 

查看目录内容

ls

对应英文(list)显示目录内容列表

使用格式:ls [选项]... [目录或文件名]

选项命令常用 说明
ls 目录 显示目录内容列表
ls -l 目录 显示详细信息 简写ll
ls -a 目录 显示所有子目录和文件的信息,包括隐藏文件
ls -R 目录 递归显示内容
ls -h 目录 以友好方式显示文件大小

举例:

[root@node100 /]# ls 

[root@node100 /]# ll 

[root@node100 /]# ll -h 

[root@node100 /]# ll /etc/ntp/ 

创建目录

mkdir

对应英文( make directory) 创建目录:

使用格式: mkdir [选项] [参数]

选项命令常用 说明
mkdir test 创建test目录
mkdir -p demo/test 创建一级目录demo以及二级目录test
[root@node100 /]# mkdir test 

[root@node100 /]# mkdir -p demo/test 

创建文件

touch

用途:创建文件,使用格式:touch 文件名

[root@node100 /]# touch a.txt 

删除操作

rmdir

对应英文(remove)用途:删除空目录(只能删除目录)

使用格式:rmdir [-p] dirName

选项命令常用 说明
rmdir test 删除test目录
rmdir -p demo/test 删除一级目录demo以及二级目录test
[root@node100 /]# rmdir test 

[root@node100 /]# rmdir demo/test

rm

使用格式: rm [选项] 文件或目录

删除文件或目录

使用 rm 命令要小心,因为文件删除后不能恢复

常用选项命令 说明
rm a.txt 删除文件a.txt
rm -f a.txt 强制删除,忽略不存在的文件,没有提示
rm -r demo 递归删除目录或文件demo
rm -rf 文件或目录 强制递归删除文件或目录
[root@node100 /]# rm -rf a.txt 

复制文件

cp

使用格式: cp [选项] 源文件或目录 目标文件或目录

命令 说明
cp a a_copy 复制文件a,并命名为a_copy
cp -R demo demo_copy 复制目录demo,并命名为demo_copy
[root@node100 /]# cp -R demo demo_copy

移动文件

mv

用途:移动文件,如果与源文件位置一样,则相当于重命名.

使用格式: mv [选项]... 源文件或目录 目标文件或目录

常用选项命令 说明
mv a /demo 将当前目录下的文件a移动到更目录下的demo目录里
[root@node100 /]# mv a /demo

查看文件内容

cat

用途:连接文件并打印到标准输出设备上

使用格式:cat [选项] 文件

常用选项命令 说明
cat bb 将文件bb内的内容全部打印出来
cat -n bb 将文件bb内的内容全部打印出来,并显示行号
[root@node100 /]# cat -n bb

用途:在屏幕上显示指定文件的开头若干行,默认显示 10 行

使用格式:head [选项] 文件

常用选项命令 说明
head cc 打印文件cc内前十行的内容
head -15 cc 打印文件cc内前15行的内容
[root@node100 /]# head -15 cc

tail

用途:在屏幕上显示指定文件的末尾若干行,默认显示 10 行。

使用格式:tail [选项] 文件

常用选项命令 说明
tail cc 打印文件cc内后十行的内容
tail -15 cc 打印文件cc内后15行的内容
[root@node100 /]# tail -15 cc

more

用途:显示文件内容,每次显示一屏。

使用格式:more 文件

more的操作键

按键 说明
按 Space 键 显示文本的下一屏内容
按 Enter 键 只显示文本的下一行内容
按 h 键 显示帮助屏,该屏上有相关的帮助信息
按 b 键 显示上一屏内容
按 q 键 退出 more 命令

less

用途:分屏上下翻页浏览文件内容

使用格式:less 文件

less的操作键

按键 说明
按 e 键 向上滚动一行
按 y 键 向下滚动一行
G 跳到文件末尾
g 跳到文件首行

查找文件

find

findd的命令功能非常强大,通常用在“特定的目录下找符合条件的文件”

使用格式:find [路径] [选项] 表达式

常用选项命令 说明
find *1 在当前目录下查找名字中最后一位为1的文件或目录
find / 1* 表示从根目录中查找名字是1开头的文件或目录
find / -name *1* 从根目录中查找名字中包含1的文件或目录

*注意:表示通配符

[root@node100 /]# find / -name *1*

清屏操作

clear

[root@node100 /]# clear

网络测试命令

ping

使用格式:ping ip地址或主机名称

[root@node100 /]# ping www.baidu.com

常用快捷键

tab

输入任何文件名或者目录名的部分字符,敲击tab键,它将会自动补充你需要的文件名,或显示全部可能出现的结果。

上下方向键或者CTRL+P、CTRL+N

CTRL+P键显示上一条命令,CTRL+N键显示下一条命令。

CTRL+U

清除光标前所有的内容。

CTRL+C

中断命令或任务,比如我们在ping网络的时候,可以使用CTRL+C来中断命令。

CTRL+R

在历史命令中查找,根据输入的字符进行模糊匹配,继续按CTRL+R,切换匹配的多个结果,按回车键选中,按ESC选中。

复制粘贴

在Linux命令行中:复制CTRL+INSERT 粘贴SHIFT+INSERT

关机和重启

poweroff

关机命令

reboot

重启

echo 输出

echo 会在终端中显示参数指定的文字,通常会和 重定向 联合使用

重定向 > 和 >>

> 表示输出,会覆盖文件原有的内容

>> 表示追加,会将内容追加到已有文件的末尾

vi文本编辑器

Linux中最常用的文本编辑器

vi:类Unix系统中默认的文本编辑器;

vim:vi编辑器的增强版本,习惯上也称为vi;

vi文本编辑器的作用和特性:vi可以执行插入、删除、查找、替换等众多文本操作,而且用户可以根据自己的需要对其进行定制,只是一个文本编辑器,不能排版;

vi没有菜单,只有命令 ;

vi的三种工作模式

vi有三种基本工作模式,分别是:

命令模式 (command mode):或叫一般模式

插入模式 (insert mode):或叫编辑模式

末行模式 (last line mode):命令行模式

vi操作命令

插入命令

在命令模式下进行以下操作:

按键 说明
i 在光标前插入
I 在当前行首插入
a 在光标后一位开始插入
A 在当前行尾插入
o 在当前行下面插入一个新行
O 在当前行上面插入一个新行

定位命令

在命令模式下进行以下操作:

按键 说明
$ 移至当前行行尾
0 移至当前行行首
gg 移到第一行行首
G 移到最后一行行首
nG 移到第n行行首

在末行模式下进行以下操作:

命令 说明
:set nu 显示行号
:set nonu 隐藏行号
:n 移到第n行

删除命令

在命令模式下进行以下操作:

命令 说明
x 删除光标所在的文字
nx 删除光标后面的n个字符
X 删除光标前面的一个字符
nX 删除光标前面的n个字符
dd 删除光标所在行
ndd 删除从光标所在行开始向下数n行

复制和剪切命令

在命令模式下进行以下操作:

按键 说明
yy、Y 复制当前行
nyy、nY 复制从当前行开始以下n行
p 粘贴在当前光标所在行下
P 粘贴在当前光标所在行上

替换和取消命令

在命令模式下进行以下操作:

按键 说明
r 替换光标所在处的一个字符
R 进入替换模式,从光标所在处开始替换字符,按Esc结束
u undo 撤销上一步操作

在末行模式下进行以下操作:

s(substitute)指令可搜寻某行列范围

g(global)指令可搜寻整个编辑缓冲区的资料

举例:

:%s/old/new/g # 将文件中所有的“old”替换成“new”
:10,20s/old/new		  #	将第10行至第20行第一次出现“old”的地方替换成“new”
:%s/^/hi/g # 在所有行的行首插入“hi”
:%s/$/goodbye/g	       # 在所有行的行尾添加“goodbye”

保存和退出命令

在末行模式下进行以下操作:

按键 说明
:w 保存修改
:q 退出
:wq 保存修改并退出
:q! 强制退出
:wq! 保存强制退出

系统时间管理

显示系统当前时间和时区

datedate -R

[root@node100 ~]# date

[root@node100 ~]# date -R

格式化输出的选项

选项 说明
%Y
%m
%d
%H
%M
%S
[root@node100 ~]# date "+%Y_%m_%d %H:%M:%S"    # 分隔符可自己定义

网络管理

ifconfig

查看当前所有活动网络接口的状态信息,如下图:

[root@node100 ~]# ifconfig

设置主机名

命令:hostname查看主机名

[root@node100 ~]# hostname

CentOS 6修改主机名

编辑文件:/etc/sysconfig/network

[root@node100 ~]# vim /etc/sysconfig/network

CentOS 7修改主机名

编辑文件:/etc/hostname

[root@node100 ~]# vim /etc/hostname

注意:修改完成保存退出。需要重启虚拟机才能生效。

配置主机映射

编辑文件:/etc/hosts

[root@node100 ~]# vim /etc/hosts

设置防火墙

CentOS 6命令

命令 说明
service iptables status 查看防火墙状态
service iptables start 开启防火墙
service iptables stop 关闭防火墙

CentOS 7命令

命令 说明
systemctl status firewalld 查看防火墙状态
systemctl start firewalld 开启防火墙
systemctl stop firewalld 关闭防火墙

进程管理

ps命令

命令 说明
ps 查看系统进程的命令
ps -ef 查看系统的所有进程的详细信息
[root@node100 ~]# ps -ef

kill命令

命令 说明
kill 进程号 结束进程
kill -9 进程号 强制杀死进程

用户和组

Linux是一个多任务多用户的操作系统,使用ls –l命令显示如下信息:

Linux用户类型

Linux用户信息相关文件:/etc/passwd 和 /etc/shadow

查看文件/etc/passwd 文件的内容

root:x:0:0:root:/root:/bin/bash

Linux组类型

Linux组信息相关文件:/etc/group 和 /etc/gshadow

查看文件/etc/group 文件的内容

hadoop:x:500:

\

用户操作

注意:以下操作必须使用root用户

添加用户

useradd 用户名

设置密码

passwd 用户名

修改用户

usermod -l 新名字 旧用户名

删除用户

userdel -r 用户名
# -r 表示把用户及用户的主目录都删除

组操作

注意:以下操作必须使用root用户

添加组

groupadd 组名

修改组

groupmod –n 新组名 旧组名

添加用户到组

gpasswd –a 用户 组

将组中的用户删除

gpasswd –d 用户 组

删除组

groupdel 组

创建用户指定组

useradd -g 组 用户

文件权限

格式解读

-:标识节点类型(d:文件夹 -:文件 l:链接)

文件 文件夹
r 可读取内容 可以ls
w 可修改文件的内容 可以在其中创建或删除子节点
x 能否运行这个文件 能否cd进入到这个目录

数字权限值

除了用字母rwx来表示权限,还可以使用3位数字来表达文件或目录的权限。

每个数字是相应对象指派的以下三个值的和:

读:4

写:2

执行:1

修改权限

使用格式:chmod [选项] 符号 filename 或者 chmod [选项] 数值 filename

示例:

命令 说明
chmod u=rwx demo 设定demo目录的拥有者有读、写、和搜索或访问的权限,同时保证组和其它用户的原有权限不变
chmod ugo-rw demo
或者
chmod a-rw demo
任何用户对目录demo都没有读和写的权限
chmod -R ugo+rw demo 设定所有用户对demo目录及以下所有文件都有读和写的权限
chmod 664 demo 设定demo目录的拥有者和组用户有读和写的权限,其他用户只有读的权限

更改文件或目录的所有者和组

注意:以下操作必须使用root用户

命令:chown

只修改

命令 说明
chown 用户 文件 只更改所有者,而不更改组
chown :组名 文件 只更改组,而不更改用户
chown 用户:组 文件 同时更改文件的用户和组

计划任务

命令:crontab

功能:

在固定的间隔时间执行指定的系统指令;

时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合;

这个命令非常适合周期性的日志分析或数据备份等工作。

使用格式:crontab [-u 用户] [选项] (-u 用户:用来设定某个用户的crontab服务,若不指定则表示当前用户) 

选项说明

选项 说明
-e 编辑某个用户的定时任务。
-l 显示某个用户的定时任务。
-r 删除某个用户的定时任务。

配置文件

*		*	   *		*	    *      command
分 时 日 月 周 命令
第 1 列表示分钟 1~59 每分钟用*或者 */1 表示
第 2 列表示小时 0~23(0 表示 0 点)
第 3 列表示日期 1~31
第 4 列表示月份 1~12
第 5 列标识号星期 0~6(0 表示星期天)
第 6 列要运行的命令

特殊符号说明

“*” 代表取值范围内的数字
“/” 代表“每”, 
“-” 代表从某个数字到某个数字, 
“,” 分开几个离散的数字

配置示例

命令 说明
*/10 * * * * echo 1 >> /a.txt 表示每隔十分钟向a.txt追加数字1
30 21 * * * echo 1 >> /a.txt 表示每晚的 21:30向a.txt追加数字1
55 5 1,15 * * echo 1 >> /a.txt 表示每月 1、 15日的 5 : 55向a.txt追加数字1
0,30 18-23 * * * echo 1 >> /a.txt 表示在每天 18 : 00 至 23 : 00 之间每隔 30 分钟向a.txt追加数字1
59 23 * * 6 echo 1 >> /a.txt 表示每星期六的 11 : 59 pm 向a.txt追加数字1

压缩打包

gzip压缩

使用格式:gzip 文件名

gzip解压缩

使用格式:gzip  -d  *.gz格式的压缩文件

bzip2压缩

使用格式:bzip2  文件名

bzip2解压缩

使用格式:bzip2  -d  *.bz2格式的压缩文件

压缩与解压缩:tar命令

tar打包

使用格式:tar  -cvf  压缩名 文件名/目录
相关参数解释:
c: create,创建压缩文件
v: verbose,显示过程
f: file,指定文件

tar解包

使用格式:tar  -xvf  *.tar格式的打包文件
相关参数解释:
x: extract,解压缩文件,或者叫还原文件

tar打包并压缩(.tar.gz)

使用格式:tar  -zcvf  打包压缩名 文件名/目录
相关参数解释:
z: gzip,通过 gzip 格式压缩或者解压缩

tar解包并解压缩(.tar.gz)

使用格式:tar  -zxvf  *.tar.gz格式的打包压缩文件

tar打包并压缩(.tar.bz2)

使用格式: tar  -jcvf  打包压缩名 文件名/目录
相关参数解释:
j:支持 bzip2 压缩和解压缩

tar解包并解压缩(tar.bz2)

使用格式: tar  -jxvf  *.tar.gz格式的打包压缩文件

正则表达式

正则表达式概述

正则表达式(Regular Expression、regex或regexp,缩写为RE),也译为正规表示法、常规表示法,是一种字符模式,用于在查找过程中匹配指定的字符。
许多程序设计语言都支持利用正则表达式进行字符串操作。
正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。
支持正则表达式的程序如:locate |find| vi| grep| sed |awk

正则的作用:

匹配邮箱、匹配身份证号码、手机号、银行卡号;
匹配某些特定字符串,做特定处理等等。

正则中普通常用的元字符

名词解释:

元字符:指那些在正则表达式中具有特殊意义的专用字符,如: 点 (.) 星(*) 问号(?)等。

前导字符:位于元字符前面的字符. abc* aooo.

元字符 功能 备注
. 匹配除了换行符以外的任意字符
* 前导字符出现0次或连续多次
.* 任意长度字符 ab.*
^ 行首(以...开头) ^root
$ 行尾(以...结尾) bash$
^$ 空行
[] 匹配括号里任意单个字符或一组单个字符 [abc]
 [^] 匹配不包含括号里任一单个字符或一组单个字符 [^abc]
^[]  匹配以括号里任意单个字符或一组单个字符开头  ^[abc]
^[^] 匹配不以括号里任意单个字符或一组单个字符开头

正则中其他常用元字符

元字符 功能
\< 取单词的头
\> 取单词的尾
\< \> 精确匹配
\{N\} 匹配前导字符连续出现N次
\{N,\} 匹配前导字符至少出现N次
\{N,M\} 匹配前导字符出现N次与M次之间
\( \) 保存被匹配的字符
\d 匹配数字
\w 匹配字母数字下划线
\s 匹配空格、制表符、换页符

扩展类正则常用元字符

扩展元字符 功能 备注
+ 匹配一个或多个前导字符 bo+匹配boo、bo
? 匹配0个或1个前导字符 bo?匹配b、bo
` `
() 组字符(看成整体) (my|your)self:表示匹配myself或者yourself
{N} 前导字符重复n次
{N,} 前导字符重复至少n次
{N,M} 前导字符重复n到m次
表达式 功能
[:alnum:] 字母与数字
[:alpha:] 字符(包括大小写)
[:blank:] 空格与制表符
[:lower:] 小写字母
[:upper:] 大写字母
[:punct:] 标点符号
[:space:] 包括换行符,回车等在内的所有空白
[:digit:] 数字

grep

grep命令是一种强大的文本搜索工具,用于查找文件中符合条件的字符串,它能使用正则表达式搜索文本,并把匹配的行打印出来。

使用格式: grep [选项] "搜索内容" 文件名 [--color (将搜索结果中的搜索内容加颜色)]

常用选项 说明
-i 忽略大小写
-n 输出行号
-v 反向查找

示例:

[root@node100 /]# grep q a.txt --color

也可以使用上面的正则表达

[root@node100 /]# grep ^[0-9] a.txt --color

sed

sed是Stream Editor(流编辑器)的缩写,简称流编辑器;用来处理文件的

sed是一行一行读取文件内容并按照要求进行处理,把处理后的结果输出到屏幕。

首先sed读取文件中的一行内容,把其保存在一个临时缓存区中(也称为模式空间)

然后根据需求处理临时缓冲区中的行,完成后把该行发送到屏幕上,由于sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会直接修改原文件。sed主要用来自动编辑一个或多个文件;简化对文件的反复操作,对文件进行过滤和转换操作

使用格式:sed [选项] '处理动作' 文件名

常用选项

选项 说明 备注
-e 进行多项编辑
-n 取消默认输出 不自动打印模式空间
-r 使用扩展正则表达式
-i 原地编辑(修改源文件)
-f 指定sed脚本名称

常见处理动作

动作 说明 备注
'p' 打印
'i' 在指定行之前插入 类似vim里的大写O
'a' 在指定行之后插入 类型vim里的小写o
'c' 替换指定行所有内容
'd' 删除指定行

示例:

1)打印文件内容
[root@tom ~]# sed  -n 'p'  a.txt           # 打印每一行
[root@tom ~]# sed  -n '1p'  a.txt          # 打印第1行
[root@tom ~]# sed  -n '2p'  a.txt          # 打印第2行
[root@tom ~]# sed  -n '1,5p'  a.txt        # 打印1到5行
[root@tom ~]# sed  -n '$p' a.txt           # 打印最后1行

2)增加文件内容
[root@tom ~]# sed '$a99999' a.txt          # 文件最后一行下面增加内容 
[root@tom ~]# sed 'a99999' a.txt           # 文件每行下面增加内容
[root@tom ~]# sed '5a99999' a.txt          # 文件第5行下面增加内容
[root@tom ~]# sed '$i99999' a.txt          # 文件最后一行上一行增加内容
[root@tom ~]# sed 'i99999' a.txt           # 文件每行上一行增加内容
[root@tom ~]# sed '6i99999' a.txt          # 文件第6行上一行增加内容
[root@tom ~]# sed '/^bin/ih9999'           # 以bin开头行的上一行插入内容

3)修改文件内容
[root@tom ~]# sed '5chello world' a.txt    # 替换文件第5行内容
[root@tom ~]# sed 'chello world' a.txt     # 替换文件所有内容
[root@tom ~]# sed '1,5chello world' a.txt  # 替换文件1到5行内容为hello world
[root@tom ~]# sed '/^bin/c888888' a.txt    # 替换以bin开头的行

4)删除文件内容
[root@tom ~]# sed '1d' a.txt               # 删除文件第1行
[root@tom ~]# sed '1,5d' a.txt             # 删除文件1到5行
[root@tom ~]# sed '$d' a.txt               # 删除文件最后一行
锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章