守听 发表于 2024-9-7 18:41:26

Linux下50个高级命令及使用阐明

以下是 50 个 Linux 下的高级命令及其使用阐明。这些命令涵盖了体系管理、文件处理、网络配置和调试等方面的操作。

[*]find
搜索文件和目录。
find /path/to/search -name "filename"       # 按名称搜索文件
find /path/to/search -type f -mtime -7      # 查找过去7天内修改过的文件

[*]grep
在文件中搜索文本。
grep "search_text" file.txt               # 搜索指定文本
grep -r "search_text" /path/to/dir          # 递归搜索目录中的文本
grep -i "search_text" file.txt            # 忽略大小写搜索

[*]awk
处理和分析文本数据。
awk '{print $1}' file.txt                   # 打印文件的第一列
awk -F":" '{print $1, $3}' /etc/passwd       # 使用":"作为字段分隔符

[*]sed
流编辑器,用于处理和转换文本流。
sed 's/old_text/new_text/' file.txt          # 替换文本中的"old_text"为"new_text"
sed -i 's/old_text/new_text/' file.txt       # 直接修改文件

[*]xargs
将输入数据转换为命令行参数。
find /path/to/dir -type f | xargs rm         # 删除目录中的所有文件
echo "file1 file2 file3" | xargs -n 1 mv -t /new/dir # 将文件移动到新目录

[*]tar
打包息争包文件。
tar -cvf archive.tar /path/to/dir            # 打包目录
tar -xvf archive.tar                         # 解包 tar 文件
tar -czvf archive.tar.gz /path/to/dir      # 压缩目录为 tar.gz
tar -xzvf archive.tar.gz                     # 解压 tar.gz 文件

[*]gzip 和 gunzip
压缩息争压文件。
gzip file.txt                               # 压缩文件
gunzip file.txt.gz                        # 解压文件

[*]bzip2 和 bunzip2
使用 bzip2 压缩息争压文件。
bzip2 file.txt                              # 压缩文件
bunzip2 file.txt.bz2                        # 解压文件

[*]zip 和 unzip
压缩息争压 zip 文件。
zip archive.zip file1 file2                  # 压缩文件
unzip archive.zip                            # 解压 zip 文件

[*]ssh
安全地远程连接到另一台计算机。
ssh user@remote_host                        # 连接到远程主机
ssh -i /path/to/key user@remote_host      # 使用私钥文件连接

[*]scp
安全地复制文件到远程主机或从远程主机复制文件。
scp file.txt user@remote_host:/path/to/dir   # 从本地复制文件到远程主机
scp user@remote_host:/path/to/file.txt .   # 从远程主机复制文件到本地

[*]rsync
高效地同步文件和目录。
rsync -av /path/to/source/ /path/to/dest/    # 同步本地目录
rsync -avz user@remote_host:/path/to/dir /path/to/local/dir# 同步远程目录

[*]curl
与网络服务器交互,发送和接收数据。
curl http://example.com                  # 获取网页内容
curl -O http://example.com/file.txt         # 下载文件
curl -X POST -d "param1=value1" http://example.com/api# 发送 POST 请求

[*]wget
从网络上下载文件。
wget http://example.com/file.txt            # 下载文件
wget -r http://example.com/                  # 递归下载网站

[*]netstat
显示网络连接、路由表和接口统计信息。
netstat -tuln                               # 显示监听的端口
netstat -anp                               # 显示网络连接和相关程序

[*]ss
显示网络套接字信息。
ss -tuln                                  # 显示监听的端口
ss -s                                    # 显示套接字统计

[*]top
实时显示体系进程和资源使用情况。
top                                        # 显示系统进程
htop                                       # 交互式进程查看器

[*]ps
显示当前进程状态。
ps aux                                     # 显示所有进程的详细信息
ps -ef                                    # 显示所有进程的标准格式

[*]kill
终止进程。
kill PID                                 # 终止指定 PID 的进程
kill -9 PID                              # 强制终止进程

[*]pkill
根据进程名称终止进程。
pkill process_name                        # 终止所有匹配进程名称的进程

[*]systemctl
管理体系服务(实用于使用 systemd 的体系)。
systemctl start service_name            # 启动服务
systemctl stop service_name               # 停止服务
systemctl restart service_name            # 重启服务
systemctl status service_name             # 查看服务状态

[*]journalctl
检察和分析体系日志(实用于使用 systemd 的体系)。
journalctl -xe                            # 查看最近的日志
journalctl -u service_name                # 查看指定服务的日志

[*]crontab
管理定时任务。
crontab -e                              # 编辑当前用户的 crontab 文件
crontab -l                              # 列出当前用户的 crontab 任务

[*]at
安排一次性任务。
at now + 1 minute                         # 安排任务在一分钟后执行
atq                                       # 列出待处理的任务
atrm job_number                            # 删除指定任务

[*]chmod
更改文件或目录的权限。
chmod 755 file.txt                        # 设置权限为 rwxr-xr-x
chmod -R 755 /path/to/dir                  # 递归设置目录权限

[*]chown
更改文件或目录的所有者和组。
chown user:group file.txt                  # 更改文件所有者和组
chown -R user:group /path/to/dir            # 递归更改目录所有者和组

[*]df
显示磁盘空间使用情况。
df -h                                    # 以人类可读的格式显示磁盘使用情况
df -i                                    # 显示 inode 使用情况

[*]du
显示目录的磁盘使用情况。
du -sh /path/to/dir                        # 显示目录总大小
du -ah /path/to/dir                        # 显示目录下每个文件和子目录的大小

[*]free
显示内存使用情况。
free -h                                    # 以人类可读的格式显示内存使用情况
free -m                                    # 以 MB 为单位显示内存使用情况

[*]uptime
显示体系运行时间和负载均匀值。
uptime                                     # 显示系统运行时间和负载平均值

[*]dmesg
显示内核和启动信息。
dmesg                                    # 显示内核环形缓冲区中的信息
dmesg | grep error                         # 过滤显示错误信息

[*]lsof
列出打开的文件和相关的进程信息。
lsof                                    # 显示所有打开的文件
lsof -i :80                               # 显示使用端口80的进程

[*]strace
跟踪体系调用和信号。
strace command                            # 跟踪命令的系统调用
strace -p PID                           # 跟踪指定进程的系统调用

[*]tcpdump
捕捉和分析网络流量。
tcpdump -i eth0                           # 捕获 eth0 网络接口的流量
tcpdump -i eth0 port 80                   # 捕获指定端口的流量

[*]iptables
配置和管理网络防火墙规则。
iptables -L                               # 列出当前防火墙规则
iptables -A INPUT -p tcp --dport 22 -j ACCEPT# 允许 TCP 端口22的连接

[*]ip
显示和修改网络接口和路由。
ip addr show                              # 显示网络接口的 IP 地址
ip route show                           # 显示路由表

[*]hostname
显示或设置体系主机名。
hostname                                  # 显示当前主机名
hostnamectl set-hostname new-hostname   # 设置新的主机名

[*]mount
挂载文件体系。
mount /dev/sdX1 /mnt/point               # 挂载设备到指定目录
umount /mnt/point                        # 卸载挂载的文件系统

[*]blkid
列出块设备的信息。
blkid                                    # 显示所有块设备的 UUID 和文件系统类型

[*]parted
管理磁盘分区。
parted /dev/sdX                           # 启动 parted 工具
parted> print                              # 打印分区表

[*]fdisk
管理磁盘分区表。
fdisk /dev/sdX                           # 启动 fdisk 工具
fdisk -l                                 # 列出所有分区信息

[*]mkfs
创建文件体系。
mkfs.ext4 /dev/sdX1                      # 创建 ext4 文件系统
mkfs.xfs /dev/sdX1                     # 创建 xfs 文件系统

[*]fsck
查抄和修复文件体系错误。
fsck /dev/sdX1                           # 检查文件系统
fsck -y /dev/sdX1                        # 自动修复文件系统错误

[*]locale
显示和设置地区设置。
locale                                    # 显示当前区域设置
locale -a                                 # 显示所有可用的区域设置

[*]env
显示情况变量或设置情况变量。
env                                       # 显示当前环境变量
env VAR=value command                     # 设置环境变量并运行命令

[*]alias
创建命令别名。
alias ll='ls -la'                         # 创建别名
unalias ll                              # 删除别名

[*]history
显示命令历史记录。
history                                 # 显示命令历史
history | grep 'command'                  # 查找历史记录中的命令

[*]cron
计划任务实行。
crontab -e                              # 编辑当前用户的计划任务
crontab -l                              # 列出当前用户的计划任务

[*]watch
定期实行命令并显示输出。
watch -n 5 'df -h'                        # 每5秒执行一次 df -h 并显示结果

[*]cut
从文本中提取字段。
cut -d":" -f1 /etc/passwd               # 以":"分隔符提取第一字段
cut -c1-10 file.txt                     # 提取每行的前10个字符

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Linux下50个高级命令及使用阐明