linux常用命令

2021/7/5 7:25:08

本文主要是介绍linux常用命令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.关机重启命令

# 关机
shutdown -h now # 立刻关机
shutdown -h 5		# 5分钟后关机
poweroff				# 立刻关机
# 重启
shutdown -r now	# 立刻重启
shutdown -r 5		# 5分钟后重启
reboot					# 立刻重启

2.帮助命令

--help
shutdown --help  	# 查看帮助信息
ifconfig --help		#	查看网卡信息
man :
man shutdown			# 打开命令说明书  Q键退出

3.目录基本操作命令

目录切换

cd 
cd /home		# 进入 根目录下的 home 目录
cd - 				# 进入上一次工作路径
cd !$				# 把上个命令的参数作为 cd 的参数使用

目录查看

ls
ls -a 		# 列出目录下的所有文件,包含以 . 开始的隐藏文件,如 .bash_profile
ls -A			# 列出目录下除 . 和 .. 目录的其他文件
ls -r			# 反序排列
ls -t			# 以文件修改时间排序,由近到远
ls -S			# 以文件大小排序,大文件在前
ls -h			# 以文件易读大小显示,即容量显示 GB、MB、KB等
ls -l			# 列出目录下文件的权限、所有者、修改时间、大小等信息

目录创建

mkdir (选项) (参数)
mkdir -m		# 建立目录时设置目录的权限
mkdir -p		# 递归创建目录,即要创建的上层目录还未创建时,也会一并创建
# 可以同时创建多个目录,中间用空格隔开即可

删除目录或文件

rm (选项) (参数)
# 自杀命令
rm -rf /*		# 此命令为删除根目录下所有文件,包含操作系统【自杀命令,请不要使用!!!!!】
# 选项
-f		# 强制删除文件或目录
-i		# 删除已有的文件或目录之前询问用户
-r		# 递归处理,将指定目录下的文件和子目录一并处理
--preserve-root		# 不对根目录进行递归操作
-v		# 显示指令的详细执行过程
# 参数
# 文件或目录名称,如果参数中含有目录,则必须加上 -r 选项

rm命令删除的文件一般无法恢复,所以请确认要删除的文件。

目录修改

mv 用来对文件、目录进行重命名或剪切

用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。source表示源文件或目录,target表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。

mv (选项) (源文件或目录) (目标文件或目录)
# 选项
-b		# 当文件存在时,覆盖前,为其创建一个备份
-f		# 若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录
-i		# 交互式操作,覆盖前先询问用户是否操作
-u		# 当源文件比目标文件新活着目标文件不存在时,才执行操作

cp 将源文件或目录复制到目标文件或目录中

将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

cp (选项) (源文件或目录) (目标文件或目录)
# 选项
-d		# 当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录
-f		# 强行复制文件或目录,不论目标文件或目录是否存在
-i		#	覆盖既有文件前询问用户
-l		# 对源文件建立硬连接,而非复制文件
-r		# 递归处理,将指定目录下的所有文件与子目录一并处理
-b		# 覆盖已存在的文件目标前将目标文件备份
-v		# 详细显示命令执行的操作

4.文件基本操作命令

新建文件

touch 创建新的空文件

此命令还可以把已存在的文件的时间标签更新为系统当前时间

语法

touch (选项)(参数)

选项

-t		# 使用指定的时间日期,而非现在的系统时间

参数

文件名称

删除文件

rm 命令 和 删除目录的 rm 命令为同一个。

语法

rm -rf 文件名

文件查找

find在指定目录下查找文件

语法

find (选项) (参数)

示例

find /home -name "*.txt"		# 在 /home 目录下查找以 .txt 文件名结尾的文件
find /home ! -name "*.txt"	# 在 /home 目录下查找不是以 .txt 文件名结尾的文件
find /home -iname "*.txt"		# 同上,但是忽略文件名的大小写
find /usr/ -path "*local*"	# 匹配文件路径或文件

文件查看

less命令

less 分屏上下翻页浏览文件内容

PageUp键向上翻页,PageDown键向下翻页,上下箭头按键也可翻页, Q键退出。

语法

less (选项) (参数)

选项

-e			# 文件内容显示完毕后,自动退出
-f			# 强制显示文件
-N			# 每一行的行首显示行号
-s			# 将连续多个空行压缩成一行显示
-S			# 在单行显示较长的内容,而不换行显示

参数

文件:指定要分屏显示内容的文件

tail命令

tail显示文件的末尾若干行或动态显示文件

Control + C 键退出。

语法

tail (选项) (参数)

选项

-f			# 动态的显示文件最新追加的内容
-n			# 输出文件尾部N(为数字)行内容
-s			# 与 -f 连用, 指定监视文件变化时间间隔的秒数

示例

tail file						# 显示文件 file 的最后 10 行内容
tail -n +20 file		# 显示文件 file 的内容,从第 20 行至文件末尾
tail -c 10 file			# 显示文件 file 的最后 10 个字符
tail -f error.log		# 动态的显示文件中最新追加的内容  ctr + c 退出

文件权限修改

chmod用来变更文件或目录的权限

语法

chmod (选项) (参数) (文件或目录)

选项

-R			# 对目录及目录下的文件递归执行更改权限的操作

参数

八进制数或符号组合

示例

chmod 777 -R /home/www			

文件修改

vi或者vim 命令修改文件

Vim 操作命令待整理。

5.文件压缩解压

tar命令

tar Linux下的归档使用工具,用来压缩解压

首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。

为什么要区分这两个概念呢?这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)

语法

tar (选项) (参数)

选项

-A 			# 新增文件到已存在的备份文件
-B			# 设置区块大小
-c			# 建立新的备份文件
-C			# 切换工作目录,先进入指定目录再执行压缩/解压操作
-d			#	记录文件的差别
-x			# 从归档文件中提取文件,可以搭配 -C(大写) 在特定目录解开,但要注意不可与 -c、-t、-x出现在同一串命令中
-t			# 列出备份文件的内容
-z			# 通过 gzip 指令压缩、解压缩文件,文件名最好以 *.tar.gz 结尾
-Z			# 大写; 通过 compress 指令处理备份文件
-f			# 指定备份文件,这是一串命令中最后一个参数,后面只能跟文件名
-j			# 通过bzip2指令压缩/解压缩文件,文件名最好为*.tar.bz2;
-v			# 显示指令执行过程
-r			# 添加文件到已经压缩的文件中
-k			# 保留原有文件不覆盖

参数

文件或目录,指定要打包的文件或目录列表

示例

tar -zxvf /home/www/error.tar.gz				# 解压文件到当前目录
tar -jcv -f filename.tar.bz2 						# 压 缩:要被压缩的文件或目录名称
tar -jtv -f filename.tar.bz2						# 查 询:
tar -jxv -f filename.tar.bz2 -C /home		# 解压缩:-C 跟欲解压缩的目录

zip命令

zip用来解压缩文件

可以用来解压缩文件,或者对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。

语法

zip (选项) (参数)

选项

-A		# 调整可执行的自动解压缩文件;
-b		# <工作目录>:指定暂时存放文件的目录;
-c		#	替每个被压缩的文件加上注释;
-d		# 从压缩文件内删除指定的文件;
-D		# 压缩文件内不建立目录名称;
-f		# 此参数的效果和指定“-u”参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中;
-F		# 尝试修复已损坏的压缩文件;
-g		# 将文件压缩后附加在已有的压缩文件之后,而非另行建立新的压缩文件;
-i		# <范本样式>:只压缩符合条件的文件;
-j		# 只保存文件名称及其内容,而不存放任何目录名称;
-J		# 删除压缩文件前面不必要的数据;
-L		# 显示版权信息;
-m		# 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中;
-q		# 不显示指令执行过程;
-r		# 递归处理,将指定目录下的所有文件和子目录一并处理;
-S		# 包含系统和隐藏文件;
-T		# 检查备份文件内的每个文件是否正确无误;
-u		# 更换较新的文件到压缩文件内;
-v		# 显示指令执行过程或显示版本信息;
-z		# 替压缩文件加上注释;
-$		# 保存第一个被压缩文件所在磁盘的卷册名称;

示例

zip -q -r html.zip /home/www		# 将 /home/www/ 目录下的所有文件和目录打包入 html.zip 中

注意

系统中初始可能不自带此命令,需要安装

# CentOS
yum install -y zip unzip
# ubuntu
apt-get install -y zip unzip

unzip命令

unzip用于解压缩由zip命令压缩的压缩包

用于解压缩由zip命令压缩的“.zip”压缩包。

语法

unzip (选贤) (参数)

选项

-c			# 将解压缩的结果显示到屏幕上,并对字符做适当的转换;
-f			# 更新现有的文件;
-l			# 显示压缩文件内所包含的文件;
-p			# 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换;
-t			# 检查压缩文件是否正确;
-u			# 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中;
-v			# 执行时显示详细的信息;
-z			# 仅显示压缩文件的备注文字;
-a			# 对文本文件进行必要的字符转换;
-b			# 不要对文本文件进行字符转换;
-C			# 压缩文件中的文件名称区分大小写;
-j			# 不处理压缩文件中原有的目录路径;
-L			# 将压缩文件中的全部文件名改为小写;
-n			# 解压缩时不要覆盖原有的文件;
-o			# 不必先询问用户,unzip执行后覆盖原有的文件;
-P			# <密码>:使用zip的密码选项;
-q			# 执行时不显示任何信息;
-s			# 将文件名中的空白字符转换为底线字符;
-d			# <目录>:指定文件解压缩后所要存储的目录;
-x			# <文件>:指定不要处理.zip压缩文件中的哪些文件;
-Z			# unzip-Z等于执行zipinfo指令。

参数

压缩包:指定要解压的 “*.zip”压缩包。

示例

unzip test.zip							# 将文件在当前目录下解压
unzip -n test.zip -d /tmp		# 将文件解压到指定 /tmp 目录下,若已存在,则不覆盖原先的文件
unzip -v test.zip						# 查看压缩文件,但不解压

6.查找命令

grep命令

grep强大的文本搜索工具

它能使用正则表达式搜索文本,并把匹配的行打印出来,用于过滤、搜索的特定字符。

规则表达式

^    				# 锚定行的开始 如:'^grep'匹配所有以grep开头的行。    
$    				# 锚定行的结束 如:'grep$' 匹配所有以grep结尾的行。
.    				# 匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。    
*   				# 匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。    
.*   				# 一起用代表任意字符。   
[]   				# 匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。    
[^]  				# 匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。    
\(..\)  		# 标记匹配字符,如'\(love\)',love被标记为1。    
\<      		# 锚定单词的开始,如:'\<grep'匹配包含以grep开头的单词的行。    
\>      		# 锚定单词的结束,如'grep\>'匹配包含以grep结尾的单词的行。    
x\{m\}  		# 重复字符x,m次,如:'0\{5\}'匹配包含5个o的行。    
x\{m,\}  		# 重复字符x,至少m次,如:'o\{5,\}'匹配至少有5个o的行。    
x\{m,n\}		# 重复字符x,至少m次,不多于n次,如:'o\{5,10\}'匹配5--10个o的行。   
\w    			# 匹配文字和数字字符,也就是[A-Za-z0-9],如:'G\w*p'匹配以G后跟零个或多个文字或数字字符,然后是p。   
\W    			#	\w的反置形式,匹配一个或多个非单词字符,如点号句号等。   
\b    			# 单词锁定符,如: '\bgrep\b'只匹配grep。

示例

grep "match_pattern" file_name				# 在文件中查找 match_pattern 单词

whereis命令

语法

whereis (选项) (参数)

选项

-b			# 只查找二进制文件
-B			# <目录> 只在设置的目录下查找二进制文件
-f			# 不显示文件名前的路径名称
-m			# 只查找说明文件
-M			# <目录> 只在设置的目录下查找说明文件
-s			# 只查找原始代码文件
-S			# <目录> 只在设置的目录下查找原始代码文件
-u			# 查找不包含指定类型的文件

参数

指令名:要查找的二进制程序、源文件、man手册页的指令名

示例

whereis ls			# 查找 ls 指令

which命令

which查找并显示给定命令的绝对路径

查找并显示给定命令的绝对路径,可以查看某个命令是否存在,以及执行的哪一个位置的命令。

语法

which (选项) (参数)

选项


参数

指令名: 指令名列表

示例

which pwd				# 查找 pwd 命令

7.su、sudo

sudo命令

sudo以其他身份执行命令

sudo是为所有想使用root权限的普通用户设计的。可以让普通用户具有临时使用root权限的权利。只需输入自己账户的密码即可。

语法

sudo (选项) (参数)

选项

-b				# 在后台执行指令;
-h				# 显示帮助;
-H				# 将HOME环境变量设为新身份的HOME环境变量;
-k				# 结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;。
-l				# 列出目前用户可执行与无法执行的指令;
-p				# 改变询问密码的提示符号;
-s				# <shell>:执行指定的shell;
-u				# <用户>:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;
-v				# 延长密码有效期限5分钟;
-V				# 显示版本信息。

su命令

su用于切换当前用户身份到其他用户身份。

变更时必须输入所要变更的账户和密码

语法

su (选项) (参数)

选项

-c				# 执行完指定的指令后,即恢复原来的身份
-l				# 改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。此外,也会变更PATH变量
-m				# 变更身份时,不要变更环境变量;

参数

用户:指定要切换身份的目标用户。

其他命令

pwd显示当前工作目录

ps报告当前系统的进程状态

lsof显示当前已打开的所有文件列表

kill结束进程

ping测试主机间的网络联通性



这篇关于linux常用命令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程