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

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


目录

一、Linux 是什么

二、Linux 常用的基本指令

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

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

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

4. cp:复制(Copy)

5. mv:移动(Move)

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

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

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

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

10. tar:打包压缩、解压

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

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

13. kill:杀死进程

14. passwd:修改密码(Password)

15. tee:显示并保存

16. reboot:重启

17. date:时间相关指令

18. find:查找

19. grep:按行查找并匹配

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)

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

4. cp:复制(Copy)

cp 常用参数:

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

5. mv:移动(Move)

mv 参数:

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

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

rm 参数:

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

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

## mkdir用法
mkdir newDir/	# 在当前路径创建一个空文件夹newDir/

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

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

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

## cat用法
cat myFile	# 显示myFile

10. tar:打包压缩、解压

tar 常用参数:

  • - jcv:压缩
  • - jxv:解压
## 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 的信息
## ps用法
ps Aux 	# 查看系统所有的进程数据
ps ax	

13. kill:杀死进程

kill 常用参数 :

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

14. passwd:修改密码(Password)

## passwd用法
passwd	# 修改当前用户的密码

15. tee:显示并保存

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

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

16. reboot:重启

## 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

你可能感兴趣的:(学习笔记,linux,运维,服务器,人工智能)