CentOS 是一种基于 Red Hat Enterprise Linux (RHEL) 的免费开源操作系统,以其稳定性和高效性广泛应用于服务器和企业环境中。对于系统管理员和开发人员来说,掌握 CentOS 的常见命令是日常工作中的必备技能。本文将详细介绍一些在 CentOS 上常用的命令,帮助用户提高操作系统管理和维护的效率。
一、文件和目录管理命令
1. ls
- 列出目录内容
ls
命令用于显示指定目录下的文件和子目录列表。常用参数有:
ls
:显示当前目录下的内容。ls -l
:显示详细信息,包括权限、所有者、大小和修改时间。ls -a
:显示所有文件,包括隐藏文件(以.
开头的文件)。ls -lh
:以人类可读的格式显示文件大小。
示例:
bash
ls -l
2. cd
- 切换目录
cd
命令用于在目录之间切换。常用形式有:
cd /path/to/directory
:切换到指定目录。cd ~
或cd
:切换到当前用户的主目录。cd ..
:切换到上一级目录。
示例:
bash
cd /var/log
3. pwd
- 显示当前目录
pwd
命令用于显示当前工作目录的完整路径。
示例:
bash
pwd
4. mkdir
- 创建目录
mkdir
命令用于创建新目录。常用参数有:
mkdir directory_name
:创建一个目录。mkdir -p /path/to/directory
:递归创建多级目录。
示例:
bash
mkdir new_folder
5. rmdir
和 rm
- 删除目录和文件
rmdir
命令用于删除空目录,而 rm
命令则用于删除文件和目录。常用参数有:
rmdir directory_name
:删除空目录。rm file_name
:删除文件。rm -r directory_name
:递归删除目录及其内容。rm -f file_name
:强制删除文件,不提示确认。
示例:
bash
rm -r old_folder
6. cp
- 复制文件和目录
cp
命令用于复制文件或目录。常用参数有:
cp source_file destination
:复制文件到指定位置。cp -r source_directory destination
:递归复制目录及其内容。
示例:
bash
cp example.txt /backup/example.txt
7. mv
- 移动或重命名文件和目录
mv
命令用于移动文件或目录,也可用于重命名。常用形式有:
mv source_file destination
:移动文件到指定位置。mv old_name new_name
:重命名文件或目录。
示例:
bash
mv example.txt new_example.txt
二、文件内容查看和编辑命令
1. cat
- 连接并显示文件内容
cat
命令用于查看文件内容。常用形式有:
cat file_name
:显示文件内容。cat file1 file2 > combined_file
:将多个文件内容合并到一个文件中。
示例:
bash
cat /etc/hosts
2. less
和 more
- 分页查看文件内容
less
和 more
命令用于分页查看文件内容,适合查看大文件。
less file_name
:分页查看文件内容,支持向上翻页。more file_name
:分页查看文件内容,仅支持向下翻页。
示例:
bash
less /var/log/messages
3. head
和 tail
- 查看文件的开头或结尾
head
和 tail
命令用于查看文件的前几行或后几行内容。
head file_name
:显示文件的前10行。head -n 20 file_name
:显示文件的前20行。tail file_name
:显示文件的后10行。tail -n 20 file_name
:显示文件的后20行。tail -f file_name
:实时查看文件的新增内容,常用于查看日志文件。
示例:
bash
tail -f /var/log/syslog
4. grep
- 搜索文本
grep
命令用于在文件中搜索匹配的文本行。常用参数有:
grep 'pattern' file_name
:搜索文件中包含指定模式的行。grep -i 'pattern' file_name
:忽略大小写进行搜索。grep -r 'pattern' directory
:递归搜索目录中的文件。
示例:
bash
grep 'error' /var/log/syslog
5. nano
和 vim
- 文本编辑器
nano
和 vim
是常用的文本编辑器,用于编辑文件。
nano file_name
:使用 Nano 编辑文件,易上手。vim file_name
:使用 Vim 编辑文件,功能强大但需一定学习成本。
示例:
bash
nano /etc/hostname
三、系统管理命令
1. yum
- 软件包管理
yum
命令用于管理 CentOS 系统的软件包。常用形式有:
yum install package_name
:安装软件包。yum update package_name
:更新软件包。yum remove package_name
:卸载软件包。yum list installed
:列出已安装的软件包。yum search package_name
:搜索软件包。
示例:
bash
yum install httpd
2. systemctl
- 管理系统服务
systemctl
命令用于管理系统服务。常用形式有:
systemctl start service_name
:启动服务。systemctl stop service_name
:停止服务。systemctl restart service_name
:重启服务。systemctl status service_name
:查看服务状态。systemctl enable service_name
:设置服务开机自启。systemctl disable service_name
:取消服务开机自启。
示例:
bash
systemctl status firewalld
3. ps
和 top
- 查看进程
ps
和 top
命令用于查看系统中的进程信息。
ps aux
:显示所有进程的详细信息。top
:实时显示系统进程的资源使用情况,支持交互操作。
示例:
bash
top
4. df
和 du
- 查看磁盘使用情况
df
和 du
命令用于查看磁盘空间使用情况。
df -h
:以人类可读的格式显示文件系统的磁盘空间使用情况。du -sh directory
:显示指定目录的总大小。
示例:
bash
df -h
5. free
- 查看内存使用情况
free
命令用于查看系统的内存使用情况。
free -h
:以人类可读的格式显示内存使用情况。
示例:
bash
free -h
6. uname
- 显示系统信息
uname
命令用于显示系统的基本信息。常用参数有:
uname -a
:显示所有系统信息。uname -r
:显示内核版本。
示例:
bash
uname -r
四、用户和权限管理命令
1. useradd
和 userdel
- 添加和删除用户
useradd
和 userdel
命令用于管理系统用户。
useradd user_name
:添加新用户。userdel user_name
:删除用户。
示例:
bash
useradd newuser
2. passwd
- 修改用户密码
passwd
命令用于设置或修改用户密码。
passwd user_name
:修改指定用户的密码。
示例:
bash
passwd newuser
3. chown
- 修改文件所有者
chown
命令用于改变文件或目录的所有者和组。
chown owner:group file_name
:修改文件的所有者和组。chown -R owner:group directory
:递归修改目录及其内容的所有者和组。
示例:
bash
chown root:root /var/www/html
4. chmod
- 修改文件权限
chmod
命令用于改变文件或目录的访问权限。常用参数有:
chmod 755 file_name
:设置文件权限为755