Linux常用命令学习总结

一、linux系统简介

  • Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。
  • linux主要特征 :一切皆文件(目录、硬盘等都是文件)

  • 不懂的命令 :man 命令(查用法、全称),只记得关键词,可用man -k 关键词

    二、linux的常用命令

1.系统相关

  • uname -r 显示正在使用的内核版本
  • uname -m 显示机器的处理器架构
  • systemctl 查看正在运行的服务
  • ifconfig 查看和配置网络设备
  • date 显示系统日期
  • fdisk -l 查所有分区及总容量
  • ps -ef 显示所有进程
  • pwd 显示工作路径
  • clear 清空命令行

2.用户和组相关

  • useradd user1 创建一个新用户
  • userdel -r user1 删除一个用户 ( ‘-r’ 排除主目录)
  • groupadd group_name 创建一个新用户组
  • groupdel group_name 删除一个用户组
  • usermod -g 组名 用户名 修改用户的组
  • usermod -aG 组名 用户名 将用户添加到组

3.性能相关

  • top 动态实时显示cpu、内存、进程等使用情况(类似windows下的任务管理器)
  • top -d 2 -p pid -d为画面更新的秒数,默认5秒,-p为指定进程pid的信息
  • free -h 查看系统内存及虚拟内存使用情况
  • df -h 显示磁盘的空间使用情况
  • cat /proc/cpuinfo 显示CPU info的信息
  • cat /proc/interrupts 显示中断
  • cat /proc/meminfo 获取内存使用
  • cat /proc/version 显示内核的版本
  • ps -aux|sort -k4nr | head -n 10查看内存占用前10的进程

4.安装编译相关

  • yum install package_name 下载并安装一个rpm包
  • yum list列出当前系统中安装的所有包
  • yum remove package_name 删除一个rpm包
  • apt-get install package_name 安装/更新一个 deb 包
  • apt-get remove package_name 从系统删除一个deb包
  • tar -zxvf a.tar.gz 解压a.tar.gz
  • tar -jxvf a.tar.bz2 解压a.tar.bz2
  • make 编译
  • make install 安装
  • vim /etc/profile export PATH=$PATH:/目录/bin手动指定安装路径需要加path

5.查找相关

  • find / -name file1 从 ‘/’ 开始进入根文件系统搜索文件和目录
  • whereis halt 显示一个二进制文件、源码或man的位置
  • which halt显示一个二进制文件或可执行文件的完整路径
  • grep file匹配文件

6.文件目录相关

  • cd .. 返回上一级目录
  • ls 查看目录中的文件
  • tree 显示文件和目录由根目录开始的树形结构
  • mkdir dir1 创建一个叫做 ‘dir1’ 的目录
  • rm -rf dir1 删除一个叫做 ‘dir1’ 的目录并同时删除其内容
  • mv dir1 new_dir 重命名/移动 一个目录
  • cp file1 file2 复制一个文件
  • cp dir/* . 复制一个目录下的所有文件到当前工作目录
  • file 文件名 查看文件类型
  • touch a.txt 创建文件a.txt
  • cat file1 从第一个字节开始正向查看文件的内容
  • cat file1 file2合并两个文件
  • head -2 file1 查看一个文件的前两行
  • tail -2 file1 查看一个文件的最后两行
  • less 文件名 一页一页的显示文件内容
  • vi/vim 文件编辑查看文件
  • diff 文件1 文件2 比较文件的内容差异
  • vimdiff 文件1 文件2 命令行可视化文件比较工具

7.文件权限相关

  • ls -lh 显示权限
  • chmod [-R] 777文件或目录设置权限
  • chown user1 file1 改变一个文件的所有人属性
  • chgrp group1 file1 改变文件的群组
  • chown -R user1 directory1 改变一个目录的所有人属性并同时改变改目录下所有文件的属性

8.其他命令

  • wl -l统计数量
  • grep -n -i匹配内容列出行数忽略大小写
  • awk -F '{print $数字}' 取出指定列(默认按空格分割)
  • sed 's#被替换内容#替换内容#g'替换
  • sed '2,5d'删除2-5行
  • tr '被替换内容' '替换的内容'替换
  • sort 文件名对文件的文本内容排序(默认按首字符排序)
  • sort -nr反向排序
  • uniq -c去重
  • tasklist | findstr "端口号"运行进程名称(win)
  • netstat -ano | findstr "端口号"查找占用端口的进程(win)
  • netstat -tnlp查看当前开发的端口和进程
  • netstat -tnp当前机器的连接数
  • tail -f filename.log实时显示日志内容

9、环境变量

  • vim /etc/profile
  • .bash_profile
  • source ~/.bashrc

10、

sysctl -w vm.max_map_count=262144 sysctl -a|grep vm.max_map_count

Written on September 29, 2019