【Linux】Linux常用命令80条(含完整命令语句)
整理一些Linux指令方便大家查阅使用。以下是一些常用的 Linux 命令:
1. 文件和目录操作
ls:列出当前目录中的文件和子目录
ls
pwd:显示当前工作目录的路径
pwd
cd:切换工作目录
cd /path/to/directory
mkdir:创建新目录
mkdir directory_name
rmdir:删除空目录
rmdir directory_name
rm:删除文件或目录
rm file_name rm -r directory_name # 递归删除目录及其内容
cp:复制文件或目录
cp source_file destination cp -r source_directory destination # 递归复制目录及其内容
mv:移动或重命名文件或目录
mv old_name new_name
touch:创建空文件或更新文件的时间戳
touch file_name
cat:连接和显示文件内容
cat file_name
2. 文件内容操作
more/less:逐页显示文本文件内容
more file_name less file_name
head/tail:显示文件的前几行或后几行
head -n 10 file_name # 显示文件的前10行 tail -n 20 file_name # 显示文件的后20行
grep:在文件中搜索指定文本
grep search_term file_name
sed:流编辑器,用于文本处理和替换
sed 's/old_text/new_text/' file_name
awk:用于文本处理和数据提取
awk '{print $1}' file_name # 提取文件中的第一列数据
3. 进程管理
ps:显示当前运行的进程
ps aux
kill:终止进程
kill process_id
top:实时显示系统资源的使用情况和进程信息
top
htop:显示更友好的进程监视器(需安装)
htop
jobs:查看后台运行的任务
jobs
bg/fg:将任务放到后台或前台执行
bg [job_id] fg [job_id]
nice/renice:调整进程优先级
nice -n priority command renice -n new_priority -p pid
4. 网络操作
ping:测试与主机的连通性
ping host_name_or_ip
ifconfig/ip:查看和配置网络接口信息
ifconfig ip addr show
wget/curl:从网络下载文件
wget URL curl -O URL
ssh:远程登录到其他计算机
ssh username@remote_host
scp:安全复制文件到远程主机或从远程主机复制文件
scp local_file remote_user@remote_host:/remote/directory
rsync:同步文件和目录
rsync -avz source_directory/ remote_user@remote_host:/remote/directory/
traceroute:显示从本地主机到目标主机之间的网络路由
traceroute host_name_or_ip
netstat/ss:显示网络连接信息
netstat -tuln ss -tuln
5. 文件系统管理
df:查看磁盘使用情况
df -h
du:显示文件和目录的磁盘使用情况
du -h directory_name
mount/umount:挂载和卸载文件系统
mount /dev/sdX1 /mnt umount /mnt
lsblk:查看磁盘分区信息
lsblk
fdisk:磁盘分区管理工具
fdisk /dev/sdX
mkfs:创建文件系统
mkfs.ext4 /dev/sdX
fsck:检查并修复文件系统错误
fsck /dev/sdX
dd:用于复制和转换文件
dd if=input_file of=output_file bs=block_size
ln:创建硬链接或符号链接
ln source_file link_name ln -s source_file link_name # 创建符号链接
6. 压缩和解压缩
tar:打包和解压文件
tar -czvf archive.tar.gz directory_name # 打包并压缩 tar -xzvf archive.tar.gz # 解压文件
zip/unzip:压缩和解压ZIP文件
zip archive.zip file1 file2 unzip archive.zip
gzip/gunzip:压缩和解压文件
gzip file_name gunzip file_name.gz
bzip2/bunzip2:使用bzip2压缩和解压文件
bzip2 file_name bunzip2 file_name.bz2
7. 用户和权限管理
useradd/userdel:添加和删除用户
sudo useradd new_user sudo userdel username
passwd:更改用户密码
passwd username
chmod:修改文件或目录的权限
chmod permissions file_name
chown:修改文件或目录的所有者
chown owner:group file_name
groups:显示用户所属的组
groups username
su:切换用户
su - username
sudo:以超级用户权限运行命令
sudo command_to_run_as_superuser
8. 系统信息和管理
uname:显示系统信息
uname -a
uptime:显示系统运行时间和负载
uptime
hostname:显示或设置主机名
hostname
date:显示或设置系统日期和时间
date
who/w:显示当前登录用户信息
who w
history:查看命令历史记录
history
free:查看内存使用情况
free -m
top/htop:查看系统资源使用情况
top htop
df/du:查看磁盘使用情况
df -h du -sh directory_name
9. 防火墙和安全
iptables:配置防火墙规则
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
ufw:简单的防火墙管理工具
ufw enable
ssh-keygen:生成 SSH 密钥对
ssh-keygen -t rsa
openssl:生成和管理SSL证书
openssl genrsa -out private_key.pem 2048
10. 定时任务和计划任务
cron:定时任务管理器
crontab -e
at:在特定时间运行命令
at 2pm
11. 日志和监控
dmesg:显示内核日志信息
dmesg
journalctl:查看系统日志(适用于systemd)
journalctl
tailf:实时追踪文件的末尾
tailf file_name
logger:向系统日志发送消息
logger "Your log message"
syslog:系统日志工具
/var/log/syslog
12. 设备管理
lsusb:列出所有USB设备
lsusb
lspci:列出所有PCI设备
lspci
dmidecode:显示硬件信息
sudo dmidecode
hdparm:查看和设置硬盘参数
sudo hdparm -i /dev/sdX
iostat:显示CPU和设备I/O统计信息
iostat
13. 包管理
apt-get:用于安装、更新和删除包(适用于Debian/Ubuntu)
sudo apt-get update sudo apt-get install package_name sudo apt-get remove package_name
yum:用于安装、更新和删除包(适用于RedHat/CentOS)
sudo yum update sudo yum install package_name sudo yum remove package_name
rpm:用于管理RPM包
rpm -ivh package_name.rpm rpm -e package_name
14. 系统启动和关机
shutdown:关闭系统
shutdown -h now
reboot:重启系统
reboot