【Java 进阶篇】Linux 常用命令使用详解:玩转命令行的魔法世界
在计算机的世界里,Linux是一个强大而富有魅力的操作系统。对于很多小白用户来说,刚接触Linux时可能感觉有些陌生,尤其是在命令行界面下。然而,正是这个看似晦涩的命令行,才是Linux系统最为强大和灵活的地方。本文将围绕Linux常用命令,为你详细解读这个命令行的魔法世界,让你能够游刃有余地使用Linux系统。
初识 Linux 命令行
首先,我们来了解一下Linux命令行的基本结构。Linux命令行的基本格式为:
command [options] [arguments]
- command: 要执行的命令。
- options: 用于修改命令行为的标志,通常以
-
开头。 - arguments: 命令的参数,用于指定命令要操作的对象。
接下来,我们将介绍一些常用的Linux命令,以及它们的基本用法。
文件和目录操作命令
1. ls
- 列出目录内容
ls
命令用于列出目录中的文件和子目录。在没有任何参数的情况下,它默认列出当前工作目录的内容。
ls
2. pwd
- 显示当前工作目录
pwd
命令用于显示当前工作目录的路径。
pwd
3. cd
- 切换工作目录
cd
命令用于切换当前工作目录。可以使用相对路径或绝对路径。
cd /path/to/directory
4. cp
- 复制文件或目录
cp
命令用于复制文件或目录。
cp source destination
5. mv
- 移动/重命名文件或目录
mv
命令用于移动文件或目录,也可以用于重命名文件或目录。
mv source destination
6. rm
- 删除文件或目录
rm
命令用于删除文件或目录。
rm file
注意: 使用 rm
命令要谨慎,特别是使用 -rf
选项,它会递归删除目录并强制执行,没有任何确认。
rm -rf directory
7. mkdir
- 创建目录
mkdir
命令用于创建目录。
mkdir directory_name
8. cat
- 查看文件内容
cat
命令用于查看文件的内容。
cat file
9. more
和 less
- 分页查看文件内容
more
和 less
命令也用于查看文件内容,但允许按页查看,适用于大文件。
more file
或
less file
系统信息和操作命令
10. uname
- 显示系统信息
uname
命令用于显示系统信息。
uname -a
11. date
- 显示系统日期和时间
date
命令用于显示系统的当前日期和时间。
date
12. cal
- 显示日历
cal
命令用于显示日历。
cal
13. df
- 显示磁盘空间使用情况
df
命令用于显示文件系统的磁盘空间使用情况。
df -h
14. du
- 显示目录空间使用情况
du
命令用于显示目录的空间使用情况。
du -h
15. ps
- 显示进程信息
ps
命令用于显示当前运行的进程信息。
ps aux
16. top
- 实时显示系统资源使用情况
top
命令用于实时显示系统资源使用情况,包括 CPU 占用、内存使用等。
top
按 q
键退出 top
命令。
17. kill
- 终止进程
kill
命令用于终止指定进程。首先,使用 ps
命令查找进程的 PID(进程标识符),然后使用 kill
命令终止该进程。
ps aux | grep process_name
kill -9 PID
18. shutdown
- 关机或重启系统
shutdown
命令用于关机或重启系统。
# 关机
sudo shutdown -h now
# 重启
sudo shutdown -r now
19. passwd
- 修改用户密码
passwd
命令用于修改用户密码。
passwd
20. whoami
- 显示当前用户名
whoami
命令用于显示当前登录用户的用户名。
whoami
21. history
- 查看命令历史
history
命令用于查看之前执行过的命令历史记录。
history
22. echo
- 输出文本
echo
命令用于在终端输出文本。
echo "Hello, Linux!"
23. man
- 查看命令手册
man
命令用于查看命令的手册页。
man command_name
例如,查看 ls
命令的手册:
man ls
按 q
键退出 man
命令。
文件内容操作命令
24. cat
- 查看文件内容
cat
命令不仅可以用于创建文件,还可以用于查看文件内容。
cat file
25. more
和 less
- 分页查看文件内容
more
和 less
命令同样也可以用于查看文件内容。
more file
或
less file
26. head
- 显示文件头部内容
head
命令用于显示文件的头部内容,默认显示前 10 行。
head file
27. tail
- 显示文件尾部内容
tail
命令用于显示文件的尾部内容,默认显示后 10 行。
tail file
28. grep
- 在文件中查找文本
grep
命令用于在文件中查找包含指定文本的行。
grep "pattern" file
29. sed
- 流编辑器
sed
命令是一种流编辑器,用于对文本进行基本的文本转换和过滤。
sed 's/old_pattern/new_pattern/' file
30. awk
- 文本处理工具
awk
命令是一种强大的文本处理工具,用于从文本文件中抽取和打印指定信息。
awk '{print $1}' file
网络操作命令
31. ping
- 测试网络连接
ping
命令用于测试网络连接和测量网络性能。
ping example.com
32. traceroute
- 跟踪数据包的路径
traceroute
命令用于跟踪数据包从本地主机到目标主机的路径。
traceroute example.com
33. curl
- 命令行工具和库,用于传输数据
curl
命令用于在命令行下工作的工具和库,用于传输数据。
curl http://example.com
34. wget
- 下载文件
wget
命令用于从网络下载文件。
wget http://example.com/file.zip
35. ssh
- 安全 Shell
ssh
命令用于通过加密的方式连接到远程主机,提供一个安全的 Shell 会话。
ssh username@hostname
36. scp
- 安全复制文件
scp
命令用于在本地主机和远程主机之间安全地复制文件。
scp file.txt username@hostname:/path/to/destination
37. netstat
- 显示网络状态
netstat
命令用于显示网络连接、路由表、接口统计等网络相关信息。
netstat -a
38. ip
- 显示和操作网络设备和路由表
ip
命令用于显示和操作网络设备、路由表、邻居关系等网络相关信息。
ip addr show
39. ifconfig
- 配置和显示网络接口信息
ifconfig
命令用于配置和显示网络接口信息。
ifconfig
用户和权限管理命令
40. who
- 显示当前登录用户信息
who
命令用于显示当前登录系统的用户信息。
who
41. w
- 显示当前登录用户信息
w
命令用于显示当前登录系统的用户信息,包括登录时间、运行的命令等。
w
42. users
- 显示当前登录系统的用户名
users
命令用于显示当前登录系统的用户名。
users
43. adduser
- 添加用户
adduser
命令用于添加新用户。
sudo adduser new_username
44. passwd
- 修改用户密码
passwd
命令用于修改用户密码。
passwd username
45. usermod
- 修改用户属性
usermod
命令用于修改用户的属性,如用户组、用户家目录等。
sudo usermod -g new_groupname username
46. chown
- 修改文件或目录的所有者
chown
命令用于修改文件或目录的所有者。
sudo chown new_ownername file_or_directory
47. chmod
- 修改文件或目录的权限
chmod
命令用于修改文件或目录的权限。
sudo chmod 755 file_or_directory
压缩和解压缩命令
48. zip
- 压缩文件或目录
zip
命令用于压缩文件或目录。
zip compressed_file.zip file_or_directory
49. unzip
- 解压缩文件
unzip
命令用于解压缩文件。
unzip compressed_file.zip
50. tar
- 打包和解压缩文件
tar
命令用于打包文件和解压缩文件。
# 打包文件
tar -cvf archive.tar file1 file2
# 解压文件
tar -xvf archive.tar
以上是一些常用的Linux命令,希望这份详细的使用指南能够帮助你更好地理解和使用Linux系统。在命令行中,犹如在魔法的世界中挥动魔法杖一样,通过合理运用这些命令,你将能够轻松驾驭Linux系统的强大功能。愿你在Linux的世界里畅行无阻,发现更多有趣的事物。
作者信息 作者 : 繁依Fanyi CSDN: https://techfanyi.blog.csdn.net 掘金:https://juejin.cn/user/4154386571867191 |
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!