Hi,大家好,我是半亩花海。本文主要了解 20 个常用的 Linux 基本指令。Linux 具有开放、灵活、自由、免费等特点,这使得全球大多服务器设备都是使用的 Linux 操作系统,而且很高的几率不会使用图形化的界面,只有命令行操作。而要使用命令行熟练操作 Linux,最重要的知识就是 Linux 操作系统的内核以及 Linux 环境下的指令,本篇文章的主要内容就是 Linux 环境下的指令操作。
一、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
版权归原作者 半亩花海 所有, 如有侵权,请联系我们删除。