linux常用19个命令,持续更新
1.重启远程服务器 2.查看文件夹占用空间 3.查看文件夹文件数量 4.查询时间 5.根据端口查看对应进程 6.进程号查程序所在位置 7.查找文件 8.文件夹设置权限 9.是否启动成功 10.删除 11.解压命令 12.压缩 13.导出导入 14.防火墙 15.开启端口 16.进程操作 17.查询当前路径 18.安装telnet 19.上传文件 ### Linux常用19个命令详解 #### 1. 重启远程服务器 - **命令格式**: ```bash shutdown -r -m \\IP_ADDRESS -t 0 -f ``` - **说明**: - `-r`: 表示重新启动。 - `-m`: 指定远程机器地址(此处为IP地址)。 - `-t 0`: 设置延迟时间为0秒,即立即执行重启动作。 - `-f`: 强制关闭应用程序。 - **举例**: ```bash shutdown -r -m \\10.0.31.110 -t 0 -f ``` #### 2. 查看文件夹占用空间 - **命令格式**: ```bash du -sh PATH ``` - **说明**: - `du`: 盘点目录(disk usage)。 - `-s`: 显示总和。 - `-h`: 人性化显示(如KB、MB等)。 - `PATH`: 指定目录路径,默认`.`表示当前目录。 - **举例**: ```bash du -sh . ``` #### 3. 查看文件夹文件数量 - **命令格式**: ```bash ls | wc -l ``` - **说明**: - `ls`: 列出目录内容。 - `wc -l`: 统计行数。 - **举例**: ```bash ls | wc -l ``` #### 4. 查询时间 - **命令格式**: ```bash date +%T # 当前时间 date +%Y-%m-%d # 当前日期 ``` - **说明**: - `%T`: 显示时间,格式为HH:MM:SS。 - `%Y-%m-%d`: 显示日期,格式为YYYY-MM-DD。 - **举例**: ```bash echo $(date +%T) echo $(date +%Y-%m-%d) ``` #### 5. 根据端口查看对应进程 - **命令格式**: ```bash netstat -nlp | grep PORT ``` - **说明**: - `netstat`: 显示网络状态。 - `-n`: 显示数字地址而不是域名。 - `-l`: 显示监听的连接。 - `-p`: 显示进程ID和进程名。 - `PORT`: 指定端口号。 - **举例**: ```bash netstat -nlp | grep 8080 ``` #### 6. 进程号查程序所在位置 - **命令格式**: ```bash ll /proc/PID/cwd ``` - **说明**: - `ll`: 显示目录内容,相当于`ls -l`。 - `/proc/PID/cwd`: 显示PID对应的进程的工作目录。 - `PID`: 指定进程号。 - **举例**: ```bash ll /proc/1234/cwd ``` #### 7. 查找文件 - **命令格式**: ```bash find START_PATH -name FILENAME ``` - **说明**: - `find`: 查找文件或目录。 - `START_PATH`: 开始查找的位置。 - `-name`: 按文件名查找。 - `FILENAME`: 指定文件名。 - **举例**: ```bash find / -name nginx.conf ``` #### 8. 文件夹设置权限 - **命令格式**: ```bash chmod PERMISSIONS DIRECTORY ``` - **说明**: - `chmod`: 修改文件或目录权限。 - `PERMISSIONS`: 权限字符串,如`777`表示完全控制。 - `DIRECTORY`: 指定目录。 - **举例**: ```bash chmod 777 mydirectory ``` #### 9. 是否启动成功 - **检查方法**: 1. **通过进程判断**: ```bash ps -ef | grep PROGRAM_NAME ``` 2. **通过端口判断**: ```bash netstat -anp | grep :PORT ``` - **说明**: - `PROGRAM_NAME`: 指定程序名称。 - `PORT`: 指定端口号。 - **举例**: ```bash ps -ef | grep nginx netstat -anp | grep :8000 ``` #### 10. 删除 - **命令格式**: ```bash rm [OPTION]... FILE... rmdir [OPTION]... DIRECTORY... find . -type d -name DIRNAME -exec rm -rf {} + find . -type d -empty -delete ``` - **说明**: - `rm`: 删除文件。 - `rmdir`: 删除空目录。 - `-f`: 强制删除。 - `-r`/`-R`: 递归删除。 - `FILE`: 要删除的文件。 - `DIRECTORY`: 要删除的目录。 - `DIRNAME`: 指定目录名。 - **举例**: ```bash rm -rf MyDocuments/* rm -rf dir1 dir2 dir3 find . -type d -name "MyDocuments" -exec rm -rf {} + find . -type d -empty -delete ``` #### 11. 解压命令 - **命令格式**: ```bash tar -xvf filename.tar tar -zxvf filename.tar.gz tar -jxvf filename.tar.bz2 tar -xZvf filename.tar.Z unar e filename.rar unzip filename.zip tar -xvf filename.tar.xz ``` - **说明**: - `tar`: 归档工具。 - `-xvf`: 解包。 - `unrar`: 解压RAR文件。 - `unzip`: 解压ZIP文件。 - **举例**: ```bash tar -zxvf filename.tar.gz unar e filename.rar ``` #### 12. 压缩 - **命令格式**: ```bash tar -zcvf filename.tar.gz FILENAME tar -jcvf filename.tar.bz2 FILENAME zip filename.zip FILENAME gzip -d filename.gz ``` - **说明**: - `-zcvf`: 压缩为GZIP格式。 - `-jcvf`: 压缩为BZIP2格式。 - `zip`: 压缩为ZIP格式。 - `gzip -d`: 解压GZIP文件。 - **举例**: ```bash tar -zcvf filename.tar.gz filename zip -r test.zip dir gzip -d filename.gz ``` #### 13. 导出导入 - **说明**: - 此处未提供具体命令细节,一般涉及数据库的备份与恢复。 - 可以使用`mysqldump`来导出MySQL数据库,使用`mysql`命令来导入数据。 #### 14. 防火墙 - **命令格式**: ```bash systemctl status firewalld # 查看状态 systemctl start firewalld # 启动 systemctl stop firewalld # 关闭 firewall-cmd --add-port=PORT/tcp --permanent # 添加端口 firewall-cmd --remove-port=PORT/tcp --permanent # 移除端口 firewall-cmd --reload # 重载配置 ``` - **说明**: - `systemctl`: 控制systemd系统和服务管理器。 - `firewall-cmd`: 配置防火墙规则。 - `--add-port`: 添加端口。 - `--remove-port`: 移除端口。 - `--permanent`: 使更改永久生效。 - **举例**: ```bash systemctl status firewalld firewall-cmd --add-port=80/tcp --permanent firewall-cmd --reload ``` #### 15. 开启端口 - **命令格式**: ```bash firewall-cmd --add-port=PORT/tcp --permanent ``` - **说明**: - `PORT`: 指定端口号。 - **举例**: ```bash firewall-cmd --add-port=80/tcp --permanent ``` #### 16. 进程操作 - **命令格式**: ```bash ps -ef | grep PROCESS_NAME # 查找进程 kill PID # 杀死进程 killall PROCESS_NAME # 杀死所有同名进程 ``` - **说明**: - `ps`: 查看进程状态。 - `kill`: 发送信号到进程。 - `killall`: 杀死所有匹配进程。 - `PID`: 进程ID。 - **举例**: ```bash ps -ef | grep nginx kill 1234 killall nginx ``` #### 17. 查询当前路径 - **命令格式**: ```bash pwd ``` - **说明**: - `pwd`: 显示当前工作目录。 - **举例**: ```bash pwd ``` #### 18. 安装telnet - **命令格式**: ```bash sudo apt install telnet # Debian/Ubuntu sudo yum install telnet # CentOS/RHEL ``` - **说明**: - `apt`: Debian/Ubuntu系统的包管理器。 - `yum`: CentOS/RHEL系统的包管理器。 - **举例**: ```bash sudo apt install telnet ``` #### 19. 上传文件 - **命令格式**: ```bash scp SOURCE_FILE user@hostname:DESTINATION_PATH ``` - **说明**: - `scp`: 安全复制文件。 - `SOURCE_FILE`: 源文件。 - `user@hostname`: 目标主机。 - `DESTINATION_PATH`: 目标路径。 - **举例**: ```bash scp myfile.txt user@example.com:/home/user/ ``` 以上就是Linux系统中常用的19个命令的详细介绍,这些命令在日常运维工作中非常实用,可以帮助快速定位问题和提高工作效率。掌握这些基本命令对于任何Linux用户来说都是必不可少的。