Linux | 20 个常用的 Linux 基本指令

Hi,大家好,我是源于花海。本文主要了解 20 个常用的 Linux 基本指令。 Linux 具有开放、灵活、自由、免费 等特点,这使得全球大多服务器设备都是使用的 Linux 操作系统,而且很高的几率不会使用图形化的界面,只有命令行操作。 ​而要使用命令行熟练操作 Linux,最重要的知识就是 Linux 操作系统的内核以及 Linux 环境下的指令,本篇文章的主要内容就是 Linux 环境下的指令操作。


目录

[一、Linux 是什么](#一、Linux 是什么)

[二、Linux 常用的基本指令](#二、Linux 常用的基本指令)

[1. ls:列出该目录下的文件(list)](#1. ls:列出该目录下的文件(list))

[2. pwd:显示当前目录的绝对路径(Print Working Directory)](#2. pwd:显示当前目录的绝对路径(Print Working Directory))

[3. cd:切换目录(Change Directory)](#3. cd:切换目录(Change Directory))

[4. cp:复制(Copy)](#4. cp:复制(Copy))

[5. mv:移动(Move)](#5. mv:移动(Move))

[6. rm:删除给定的文件(Remove)](#6. rm:删除给定的文件(Remove))

[7. mkdir:创建一个新目录(Make Directory)](#7. mkdir:创建一个新目录(Make Directory))

[8. rmdir:删除文件夹(Remove Directory)](#8. rmdir:删除文件夹(Remove Directory))

[9. cat:查看文件内容(concatenate and print files)](#9. cat:查看文件内容(concatenate and print files))

[10. tar:打包压缩、解压](#10. tar:打包压缩、解压)

[11. zip、unzip:打包压缩、解压](#11. zip、unzip:打包压缩、解压)

[12. ps:查看进程(Process Select)](#12. ps:查看进程(Process Select))

[13. kill:杀死进程](#13. kill:杀死进程)

[14. passwd:修改密码(Password)](#14. passwd:修改密码(Password))

[15. tee:显示并保存](#15. tee:显示并保存)

[16. reboot:重启](#16. reboot:重启)

[17. date:时间相关指令](#17. date:时间相关指令)

[18. find:查找](#18. find:查找)

[19. grep:按行查找并匹配](#19. grep:按行查找并匹配)

[20. 扩展命令](#20. 扩展命令)


一、Linux 是什么

Linux 是一款基于 GNU 通用公共许可协议自由和开放源代码的类 UNIX 操作系统,该操作系统的内核由 Linus Torvalds 在1991年首次发布。之后,在加上用户空间的应用程序之后,就成为了 Linux 操作系统。但是,严格来讲,Linux 只是操作系统内核,但通常采用 "Linux 内核" 来表达该意思。而 Linux 则常用来指基于 Linux 内核的完整操作系统,它包括 GUI 组件和许多其他实用工具。

在 Linux 的世界里,其核心思想:一切皆为文件。

Linux 的文件系统是采用级层式树状目录结构 ,在此结构中的最上层是根目录 "/",然后在此目录下再创建其他的目录。

  • 绝对路径:从根目录开始写,例如/home/root/workspace/sample。
  • **相对路径:以当前目录为基础,./表示当前目录(./ 等价于不写),../表示父级目录(当前路径所在的上一级路径),/**表示当前目录的根目录。

二、Linux 常用的基本指令

1. ls:列出该目录下的文件(list)

ls 常用参数:

  • **-l:**列出文件的详细信息
  • **-a:**all,列出所有文件,包括隐藏文件

注: 参数可以叠加使用,如**-la**表示列出所有文件及其详细信息。

2. pwd:显示当前目录的绝对路径(Print Working Directory)

3. cd:切换目录(Change Directory)

python 复制代码
## cd用法
cd /home    # 切换/进入home目录
cd ..       # 到上一目录(父目录)
cd ../..	# 到父目录的父目录
cd .		# 进入当前目录

4. cp:复制(Copy)

cp 常用参数:

  • **-i:**interactive mode,若有同名文件,会询问是否覆盖(如果没这个参数,会不提示,直接覆盖)
  • **-r:**recursive copy,复制文件夹时连同子文件(夹)一起复制,如果是对文件夹进行操作,一定要带这个参数
python 复制代码
## cp用法
cp -ir sourceDir/ home/targetDir/	# 把当前路径下的sourceDir文件夹复制到home目录下,取名为targetDir,且带参数-i和-r

5. mv:移动(Move)

mv 参数:

  • **-i:**interactive mode ,同 cp 的 -i 参数,若覆盖会询问
python 复制代码
## mv用法
mv -i sourceFile /home/targetFile	# 把当前目录下的sourceFile剪切到/home目录下并命名为targetFile

6. rm:删除给定的文件(Remove)

rm 参数:

  • **-i:**interactive,同上,若覆盖,先询问
  • **-r:**recursive mode,删除所有子文件(夹)
python 复制代码
## rm用法
rm Dir/	# 删除Dir文件夹(错误示例,会报错)
rm -r Dir/	# 删除Dir文件夹(正确,对文件夹操作一定要带-r)

7. mkdir:创建一个新目录(Make Directory)

python 复制代码
## mkdir用法
mkdir newDir/	# 在当前路径创建一个空文件夹newDir/

8. rmdir:删除文件夹(Remove Directory)

python 复制代码
## rmdir用法
rmdir oldDir/	# 在当前路径删除oldDir文件夹及其子文件(夹)

9. cat:查看文件内容(concatenate and print files)

python 复制代码
## cat用法
cat myFile	# 显示myFile

10. tar:打包压缩、解压

tar 常用参数:

  • **- jcv:**压缩
  • **- jxv:**解压
python 复制代码
## tar用法
tar -jcv myDir/		# 压缩myDir文件夹
tar -jxv DownloadDir.tar.gz myDir/	# 解压DownloadDir.tar.gz到当前文件夹下,并命令为myDir

11. zip、unzip:打包压缩、解压

  • **-r:**递归处理,将指定目录下的所有文件和子目录一并处理
  • **-d:**解压用,用来指定解压目录

12. ps:查看进程(Process Select)

ps 常用参数:

  • **-A:**显示所有进程
  • **-a:**不与 terminal 有关的所有进程
  • **-u:**有效用户的相关进程
  • **-x:**一般与 -a 一起用,列出完整的进程信息
  • **-l:**long,详细列出 PID 的信息
python 复制代码
## ps用法
ps Aux 	# 查看系统所有的进程数据
ps ax	

13. kill:杀死进程

kill 常用参数 :

  • **SIGHUP:**启动被终止的进程
  • **SIGINT:**相当于 Ctrl + C,中断进程
  • **SIGKILL:**强制中断进程
  • **SIGTERM:**以正常的结束进程方式来终止进程
  • **SIGSTOP:**相当于 Ctrl + Z,暂停进程
python 复制代码
## kill用法
kill -SIGKILL 10876	# 强制中断PID=10876的进程(PID可以通过ps查到,有时可以加上| grep进行筛选)

14. passwd:修改密码(Password)

python 复制代码
## passwd用法
passwd	# 修改当前用户的密码

15. tee:显示并保存

显示内容并将内容保存在文件中:

python 复制代码
python3.6 test.py | tee result.log	# 运行test.py文件,显示编译与运行结果并保存成result.log文件

16. reboot:重启

python 复制代码
## reboot用法
reboot	# 输完立马重启(记得保存文件)

17. date:时间相关指令

  • 用来显示当前时间
  • 手动指定显示时间的格式

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

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

18. find:查找

语法: find pathname -options

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

常用选项:

  • find 单独使用时,必须指定目录查找或查找当前目录的文件
  • **find -name 文件名:**遍历指定位置查找(范围较大时,较费时间)

19. grep:按行查找并匹配

grep 参数:

  • **-r:**recursive,查找所有子文件(夹)
  • **-n:**number,显示行号
  • **-w:**word,完整匹配整个单词
  • **-i:**insensitive search,忽略大小写
  • **-l:**显示文件名称,而非匹配到的行的内容
  • **-v:**反向选择,显示出没匹配到的行的内容

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

功能: 在文件中搜索字符串,将找到的行打印出来,默认区分大小写

|--------|--------------------|
| 选项 | 功能 |
| -i | 取消区分大小写 |
| -n | 输出行号 |
| -v | 反向选择,选择不带关键字的行 |

20. 扩展命令

Linux 不仅仅只有上面那些指令,还有许多指令需要学习:

  • **安装和登录命令:**login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
  • **文件处理命令:**file、dd、diff、cat、ln;
  • **系统管理相关命令:**df、top、free、quota、at、 lp、adduser、groupadd、kill、crontab;
  • **网络操作命令:**ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、nslookup;
  • **系统安全相关命令:**passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
  • **其它命令:**gunzip、unarj、mtools、unendcode、uudecode
相关推荐
李昊哲小课8 分钟前
deepin 安装 zookeeper
大数据·运维·zookeeper·debian·hbase
galileo201619 分钟前
LLM与金融
人工智能
真真-真真24 分钟前
WebXR
linux·运维·服务器
DREAM依旧35 分钟前
隐马尔科夫模型|前向算法|Viterbi 算法
人工智能
轩辰~1 小时前
网络协议入门
linux·服务器·开发语言·网络·arm开发·c++·网络协议
GocNeverGiveUp1 小时前
机器学习2-NumPy
人工智能·机器学习·numpy
wanhengidc1 小时前
短视频运营行业该如何选择服务器?
运维·服务器
雨中rain2 小时前
Linux -- 从抢票逻辑理解线程互斥
linux·运维·c++
B站计算机毕业设计超人2 小时前
计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
大数据·人工智能·爬虫·python·机器学习·课程设计·数据可视化
学术头条2 小时前
清华、智谱团队:探索 RLHF 的 scaling laws
人工智能·深度学习·算法·机器学习·语言模型·计算语言学