目录
1. ps 命令
2. top 命令
3. grep 命令
4. df 命令
5. tail 命令
6. head 命令
7. cat 命令
8. --help 和 man 命令
9. cd 命令
10. mkdir 命令
11. rm 命令
12. mv 和 cp 命令
13. touch 命令
14. vi 或 vim 命令
15. chmod 修改权限
16. 打包和压缩文件
17. kill 命令
18. ifconfig 命令
19. ping 命令
20. netstat命令
21. firewall 命令
小技巧
小结
Linux是一种开源的操作系统内核,它是基于UNIX的设计原则和思想而创建的。与其他操作系统相比,Linux具有稳定性高、安全性强、可扩展性好等特点,广泛应用于服务器、嵌入式设备和个人计算机等领域。
首先是一些使用Linux的基本操作步骤:
1. 安装Linux:选择适合你需求的Linux发行版(如Ubuntu、Fedora、CentOS等),下载并按照指引进行安装。
2. 登录:通过用户名和密码登录到Linux系统。
3. 命令行界面:Linux的主要交互界面是命令行终端。你可以使用命令行工具来执行各种操作。
4. 文件系统:Linux使用树形结构的文件系统,以目录(文件夹)的形式组织文件。常见的文件操作命令包括`cd`(切换目录)、`ls`(列出目录内容)、`mkdir`(创建目录)、`rm`(删除文件或目录)等。
5. 包管理器:Linux发行版通常提供包管理器,用于安装、更新和卸载软件包。比如Ubuntu使用的是APT(Advanced Packaging Tool),CentOS使用的是YUM(Yellowdog Updater Modified)。
6. 用户和权限管理:Linux支持多用户环境,并通过权限控制保护系统安全。你可以创建新用户、修改用户权限等。
7. 网络配置:Linux可以用于构建网络服务和应用程序。你可以配置网络接口、设置IP地址、启动和停止网络服务等。
8. Shell脚本:Shell是一种命令解释器,可以编写脚本来执行一系列命令。Shell脚本可以自动化完成重复性任务。
9. 图形界面:除了命令行界面,Linux也支持图形用户界面(GUI),比如GNOME、KDE等。你可以通过鼠标和图形界面进行交互。
10. 学习资源:学习Linux可以参考官方文档、在线教程、书籍和论坛等资源。还可以尝试在虚拟机中安装Linux进行实践。
下面是关于Linux中常用的一些命令详解:
1. ps 命令
- 描述:ps命令用于查看当前运行的进程信息。
- 用法:
ps [options]
- 示例:
ps
: 显示当前终端中运行的进程信息。ps -a
: 显示所有用户的所有进程信息。ps -e
: 显示所有进程信息,包括守护进程。ps -f
: 显示完整的进程信息,包括父进程ID和CPU使用情况等。
2. top 命令
- 描述:top命令用于动态地监视系统的进程活动和系统负载情况。
- 用法:
top [options]
- 示例:
top
: 显示实时的进程活动和系统负载情况。top -u username
: 显示指定用户的进程活动。top -p pid
: 显示指定进程ID的详细信息。top -d delay
: 指定刷新间隔时间。
3. grep 命令
- 描述:grep命令用于在文件中搜索匹配指定模式的文本行。
- 用法:
grep [options] pattern [file]
- 示例:
grep keyword file.txt
: 在文件file.txt中搜索匹配关键词keyword的文本行。grep -i keyword file.txt
: 忽略大小写地搜索关键词。grep -r keyword directory
: 递归地在指定目录下搜索关键词。
4. df 命令
- 描述:df命令用于显示磁盘分区的使用情况。
- 用法:
df [options] [file|directory]
- 示例:
df
: 显示所有文件系统的使用情况。df -h
: 以人类可读的方式显示磁盘使用情况。df -T
: 显示文件系统类型。df -i
: 显示inode的使用情况。
5. tail 命令
- 描述:tail命令用于显示文件的末尾内容。
- 用法:
tail [options] file
- 示例:
tail file.txt
: 显示文件file.txt的末尾10行内容。tail -n 20 file.txt
: 显示文件末尾20行内容。tail -f file.txt
: 实时显示文件末尾内容,并随文件变化自动更新。
6. head 命令
- 描述:head命令用于显示文件的开头内容。
- 用法:
head [options] file
- 示例:
head file.txt
: 显示文件file.txt的开头10行内容。head -n 5 file.txt
: 显示文件开头5行内容。
7. cat 命令
- 描述:cat命令用于查看文件内容,连接文件并打印到标准输出设备上。
- 用法:
cat [options] file
- 示例:
cat file1.txt
: 将file1.txt文件的内容打印到屏幕上。cat file1.txt file2.txt
: 连接file1.txt和file2.txt的内容并打印。cat > file.txt
: 创建一个新文件file.txt,并从键盘输入内容保存到该文件中(按Ctrl+D结束输入)。
8. --help 和 man 命令
--help
显示有关命令的帮助信息
man
查阅 command 命令的使用手册 man 是 manual 的缩写,是 Linux 提供的一个 手册,包含了绝大部分的命令、函数的详细使用。
有关man的操作键:
图片来源:史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!_Python_chichi的博客-CSDN博客
9. cd 命令
- 描述:目录切换。
- 用法:cd 目录
- 示例:
- cd / 切换到根目录
- cd /usr 切换到根目录下的usr目录
- cd ../ 切换到上一级目录 或者 cd ..
- cd ~ 切换到home目录
- cd - 切换到上次访问的目录
注意:Linux 所有的 目录 和 文件名 都是大小写敏感的
10. mkdir 命令
- 描述:创建目录。
- 用法:mkdir 目录
- 示例:
- mkdir test 在当前目录下创建一个名为test的目录
- mkdir /usr/test 在指定目录下创建一个名为test的目录
- mkdir -p 可以递归地创建目录
11. rm 命令
- 描述:删除目录。
- 用法:rm 目录
- 示例:
删除文件:
rm 文件 删除当前目录下的文件
rm -f 文件 删除当前目录的的文件(不询问)删除目录:
rm -r 目录 递归删除当前目录下的目录
rm -rf 目录 递归删除当前目录下的目录(不询问)全部删除:
rm -rf * 将当前目录下的所有目录和文件全部删除
rm -rf /* 将根目录下的所有文件全部删除(慎用!!!)
注意:rm不仅可以删除目录,也可以删除其他文件或压缩包,为了方便大家的记忆,无论删除任何目录或文件,都直接使用 rm -rf 目录/文件/压缩包
12. mv 和 cp 命令
- 描述:重命名mv 和 拷贝cp 目录。
- 示例:
重命名:
mv 当前文件 新文件名mv的语法不仅可以对目录进行重命名和移动,而且也可以对各种文件、压缩包等进行重命名和移动的操作
拷贝cp目录:
cp 源文件 目标文件
13. touch 命令
- 描述:新建文件。
- 用法:touch 文件名
- 示例:
- touch redis.log 在当前目录下创建一个名为redis.log的文件
14. vi 或 vim 命令
图片来源:Linux常用命令-CSDN博客
- 描述:编辑文件。
- 示例:
- vi/vim 文件名 使用编辑器打开文件
- i 插入,进入编辑模式
- ESC 进入命令行模式
- :wq 保存并退出编辑
- :q! 不保存并强制退出
15. chmod 修改权限
rwx:r代表可读,w代表可写,x代表该文件是一个可执行文件,如果rwx任意位置变为-则代表不可读或不可写或不可执行文件。
图片来源:Linux常用命令-CSDN博客
- 示例:
- chmod +x 文件 添加执行权限
- chmod 777
16. 打包和压缩文件
不同的操作系统中常用的打包压缩方式是不同的。Windows 常用 rar ,Mac 常用 zip,Linux 常用 tar.gz
打包
图片来源:Linux常用命令-CSDN博客
解压
图片来源:Linux常用命令-CSDN博客
17. kill 命令
- 描述:结束进程。
- 示例:
- kill pid 或者 kill -9 pid(强制杀死进程) pid:进程号
18. ifconfig 命令
- 描述:查看网卡信息。
- 示例:
- ifconfig 或 ifconfig | more
- ifconfig | grep inet 查看网卡对应的 IP 地址
19. ping 命令
- 描述:检测当前计算机到目标计算机之间的网络连接状态。
- 示例:
- ping IP地址 检测到目标主机是否连接正常
- ping 127.0.0.1 检测本地网卡工作正常
20. netstat命令
- 描述:查看当前系统端口。
- 示例:
- netstat -an | grep 8080 搜索指定端口
21. firewall 命令
- 描述:firewalld是CentOS/RHEL 7及以上版本中默认使用的动态防火墙管理工具。
- 用法:
firewall-cmd --state
: 显示防火墙状态。firewall-cmd --reload
: 重新加载防火墙配置文件。firewall-cmd --list-all
: 列出当前防火墙规则。firewall-cmd --add-service=service_name
: 允许指定服务的流量通过防火墙。firewall-cmd --remove-port=port/protocol
: 移除指定端口和协议的规则。
以上是Linux命令中的一小部分,还有很多其他常用命令可供使用。
一般来说,标准的Linux发行版中,预装的命令数量大约在1000个左右。其中一些是基本的系统命令,例如ls、cd、mkdir、rm等,还有一些是高级工具,如awk、sed、grep等。此外,还有一些与特定应用程序相关的命令,如MySQL、Apache、Nginx等。
当然,实际使用中我们并不需要掌握所有的命令。对于大多数用户而言,熟悉几十个常用命令就足够了,包括系统管理和维护、文件操作、文本处理、网络工具等。以下是一些常见的Linux命令分类:
系统管理和维护:top、free、ps、systemctl、service、journalctl、crontab、shutdown等。
文件操作:ls、cd、cp、mv、rm、mkdir、rmdir、touch、chmod、chown等。
文本处理:cat、less、head、tail、grep、awk、sed等。
网络工具:ping、traceroute、netstat、ifconfig、route、ssh、scp、wget等。
小技巧
图片来源:史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!_Python_chichi的博客-CSDN博客
小结
首先,因为Linux是广泛使用的操作系统,许多服务器和云平台都是基于Linux。因此,作为程序员,了解并熟练掌握Linux命令可以有助于在不同的平台上进行开发和部署。
其次,Linux命令可以帮助程序员快速高效地完成许多日常任务,如文件操作、进程管理、系统监控等。此外,结合脚本编程,可以实现许多自动化的工作流程,提高工作效率。
第三,许多网络服务和应用程序都部署在Linux服务器上,因此程序员需要学习Linux命令来进行服务器管理、故障排查和性能优化等工作。
第四,在开发过程中,经常需要查看日志、分析进程、检查文件内容等操作,这些都可以通过Linux命令在终端中完成,比如使用grep、tail等命令。
第五,了解Linux命令可以帮助程序员更好地理解文件权限、用户管理和安全设置,从而编写更加安全可靠的软件和代码。
总的来说,学习和使用Linux需要一定的时间和经验积累,它具有强大的功能和广泛的应用领域,是许多技术人员和开发者的首选操作系统。学习Linux终端的命令可以使程序员更加全面地掌握计算机系统的运行机制和管理技能,同时提高工作效率和适应多样化的开发环境。
参考:
Linux常用命令-CSDN博客
史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!_Python_chichi的博客-CSDN博客