常用linux命令

关机/重启

关机

    poweroff    ##立即关机

    shutdown -h now     ##立刻关机

    shutdown -h 时间    ##到某个时刻自动关机

    halt    ##立刻关机

    init 0        ##关闭系统

    shutdown -c    ##取消定时关机

     logout        ##注销

##简单说一下三个立刻关机的区别:poweroff是掉电关机,但实际上也是先关闭程序再关机,halt等同于shutodwn -h now是停掉系统而已,并没有掉电,主板是通电的

重启

    shutdown -r now    ##立即重启

    reboot        ##立即重启

系统信息

    uname -r    ##查看系统内核版本
 
    cat /proc/version        ##显示内核版本的详细信息
 
    arch    ##查看系统处理器是32/64位
 
    uname -m    ##等同于arch
 
    cat /proc/cpuinfo        ##查看cpu详细信息
 
    date    ##显示系统时间
 
    date +"时间显示格式" ##按规定格式显示时间
 
    clock -w        ##将系统时间写入硬件
 
    cal    年 ##查看某一年的日历
 
    hostname    ##查看计算机名,后面可以加名称临时更改系统名称
 
    cat /etc/redhat-release     ##查看系统版本
 
    head /etc/issue         ##查看系统版本
 
    free -m        ##查看系统内存使用情况
 
    df -h        ##查看系统空间使用情况
 
    du -sh        ##查看目录的大小
 
    uptime        ##查看系统运行状况
 
    ifconfig    ##查看网卡信息
 
    route -n    ##查看路由表
 
    netstat    -anpt    ##查看已经建立连接的端口
 
    netstat    -lnpt    ##查看所有侦听端口
 
    ps -ef        ##查看所有进程
 
    top        ##实时查看cpu及进程等情况
 
    last    ##查看登陆日志
 
    crontab -e    ##创建任务计划
 
    crontab    -l    ##查看当前用户的任务计划
 
    chkconfig    --list    | grep on    ##查看哪些系统开机启动的服务程序
 
    yum    -y    install    软件包 ##安装rpm软件库自动安装依赖库
 
    rpm -qa        ##查看所有已安装的rpm程序
 
    iptables -L    ##查看防火墙设置
 

文件以及目录

目录
 
##讲到目录必须要说一说绝对路径和相对路径了。绝对路径就是把路径写完整,也就是说从根(/)目录开始写起;相对定位是从当前目录开始,也就是从当前目录,相对定位代表就是"..";
 
    cd    ##进入用户家目录
 
    cd .. ##返回上一级
 
    cd 目录名 ##进入该目录
 
    pwd        ##查看当前工作目录
 
    mkdir 目录名 ##创建目录
 
    ls    ##列出当前目录中的文件
 
    ls -a    ##列出所有文件包括隐藏文件
 
    ls l = ll    ##列出当前目录下文件的详细信息
 
    tree    ##树形目录结构图
 
文件
 
    touch 文件名 ##创建文件
 
    rm    -rf    文件/目录 ##删除文件或目录不进行提示
 
    mv    文件/目录 路径/文件/目录 ##移动文件到其他目录,当移动的文件目录为同一个目录时进行重命名
 
    cp    文件 路径/文件名 ##复制文件到某个目录
 
    cp -a 目录/文件 路径/文件 ##复制文件或目录到某个文件
 
    ln    -s    文件 路径/文件 ##创建文件或目录的连接
 
    ln    -r    目录 路径 ##创建目录连接
 
    cat    文件 ##查看文件内容
 
    tac 文件 ##从最后一行开始反向查看一个文件的内容
 
    more 文件 ##查看一个长文件的内容
 
    less 文件 ##类似于 'more' 命令,但是它允许在文件中和正向操作一样的反向操作
 
    head -2 文件 ##查看一个文件的前两行
 
    tail -2 文件 ##查看一个文件的最后两行
 
    tail -f 文件 ##动态显示,实时查看被添加到一个文件中的内容
 

vim文件编辑器

基本用法:

vim 文件名称 

基本上 vi/vim 共分为三种模式,分别是命令模式,输入模式和底线命令模式 默认进入的模式时命令模式,此模式只可以接收键盘信息,无法更改文件 使用“i”可以进入输入模式,此模式可以对文件进行更改 进入输入模式,输入“:”可以进入底线命令模式

下面是我总结的一些简单vim快捷键

命令模式:
 
    a   在光标后一位开始插入
 
    A   在该行的最后插入
 
    I   在该行的最前面插入
 
    gg   直接跳到文件的首行
 
    G    直接跳到文件的末行
 
    dd    删除一行
 
 3dd 删除3行
 
    yy    复制一行
 
 3yy 复制3行
 
    p     粘贴
 
    u     undo
 
    v        进入字符选择模式,选择完成后,按y复制,按p粘贴
 
    ctrl+v   进入块选择模式,选择完成后,按y复制,按p粘贴
 
    shift+v  进入行选择模式,选择完成后,按y复制,按p粘贴
 
查找以及替换
 
 set null    ##显示行号
 
 set nonu    ##隐藏行号
 
 /you       ## 查找关键字 查找文件中出现的you,并定位到第一个找到的地方,按n可以定位到下一个匹配位置(按N定位到上一个)
 
    s/字符/替换为的字符 ##当前行替换操作
 
 %s/sad/bbb      ##整个文件中的字符替换
 
保存以及退出
 
底线模式:
 
    w    ##保存
 
    q    ##退出
 
    x    ##保存并退出
 
    wq    ##保存并退出等同于x
 
    W    ##设置文件密码
 
    q! ##强制退出
 
 ##注意!如果在修改后不保存设置直接退出需要强制退出

打包压缩

tar打包
 
    tar cvf    压缩后名称 要压缩的文件 ##只进行打包不进行压缩
 
    tar rvf 目标文件 需要追加的文件 ##将文件追加到目标包文件中
 
tar解包
 
    tar    xvf    包文件 ##将包文件进行解包
 
    tar    xvf    包文件 -C 目标目录g    ##将包解开并解到指定位置
 
gzip压缩
 
    gzip 文件 ##将文件使用gzip的压缩方式压缩
 
gzip解压
 
    gzip 压缩包 ##将压缩包解压
 
bzip2压缩
 
    bzip2 文件 ##将文件使用bzip压缩方式压缩
 
bzip2解压
 
    bunzip2 压缩包 ##将压缩包解呀
 
zip压缩
 
    zip 文件 ##将文件以zip方式进行压缩
 
unzip解压
 
    unzip 解压后目录 zip压缩文件 ##将zip压缩包解压
 
打包压缩
 
    tar    zcvf 打包压缩后文件名 要打包压缩的文件 ##打包并使用gzip方式压缩
 
    tar    jcvf 打包压缩后文件名 要打包压缩的文件 ##打包并使用bzip2方式压缩
 
解包并解压缩
 
    tar    zcvf 文件名 ##解包并解压后面可加-C指定文件位置
 
    tar    jcvf 文件名 ##解包并解压后面可加-C指定文件位置 

用户和组

    groupadd 组名 ##创建一个新用户组
 
    groupdel 组名 ##删除一个用户组
 
    groupmod -n 新组名 旧组名 ##重命名一个用户组
 
    useradd 用户名 ##创建一个新用户
 
    userdel -r 用户 ##删除一个用户 ( '-r' 同时删除主目录)
 
    passwd 用户名 ##修改用户口令 (注意此命令需要root权限)
 
    chage -E 时间 用户名 ##设置用户口令的失效期限,格式为:Y-m-d
 
    useradd  -g 组名 -d 家目录 -s /bin/bash 用户名 ##创建用户同时设置所属组以及家目录
 

权限所有者

权限分为下面三种权限:

r:可读        w:可写        x:可执行
 
实例:
 
drwxr-xr-x  2 root root  40 4 2019 a
 
上面这行是使用ls进行查看得出的
 
第一列表示权限列,别表示:
 
d:标识节点类型(d:文件夹 -:文件  l:链接)
 
后面就是权限了(三个为一组):
 
第一组 rwx        表示所有者所拥有的权限 此权限表示可读可写可执行
 
第二组 r-x        表示所属组所拥有的权限 此权限表示可读可执行不可写
 
第三组 r-x        表示除了所属组和所有者之外的其他人的权限 

修改文件权限

  chmod g-rw 文件 ## 表示将文件对所属组的rw权限取消
 
    chmod o-rw 文件 ## 表示将文件对其他人的rw权限取消
 
    chmod u+x 文件 ## 表示将文件对所属用户的权限增加x
 
    chmod a+rwx 文件 ## 表示将文件对所用户加上aux权限
 
修改权限还可以使用下面方法(数字表示权限):
 
    chmod 777 文件 ##表示给文件设置全部权限,相当于g o u都加rwx权限
 
    chmod -R 权限 目录 ##表示将递归设置权限,此文件以及下面子目录全部设置

修改文件所有者

  chmod 用户:用户组 文件 ##给文件设置所属用户和用户组
 
    chmod 用户 文件 ##给文件设置所属用户
 
    chmod :用户组 文件 ##给文件设置所属组 

RPM

 rpm -ivh 软件名 ##安装软件包
 
    rpm -ivh --nodeeps 软件名 ##安装软件包忽略依赖关系警告
 
    rpm -U 软件名 ##更新软件包但不改变其配置文件
 
    rpm -F 软件名 ##更新已经安装的软件包
 
    rpm -e 软件名 ##卸载软件包
 
    rpm -qa         ##显示系统中所有已经安装的软件包
 
    rpm -qa | grep 软件名 ##显示所有名称中包含软件字样的软件包
 
    rpm -qg "组名" 擦好像一个组件的rpm包 
 
    rpm -ql 软件名 ##查询一个已经安装的软件包
 
    rpm -q 软件名 --scripts     ##查询在安装/删除期间所执行的脚本
 
    rpm -qf 配置文件目录 ##查看配置文件所属的软件包
 
    rpm -qp 软件名 -l         ##查询未安装的软件包
 
    rpm -Vp 软件名 ##查看软件包是否安装 

YUM

yum仅限于redhat、centos、Fedora等rhel内核的操作系统

 yum install 软件包名称 ##下载并安装一个软件包
 
    yum update          ##更新当前系统中所有安装的软件包
 
    yum update 软件名 ##更新一个rpm包
 
    yum remove 软件名 ##卸载一个软件包
 
    yum list         ##列出所有安装包
 
    yum search 软件名 ##查找相关软件包
 
    yum clean packages         ##清理缓存,删除已下载的软件包
 
    yum clean all         ##清除所有软件包缓存
 
    yum    makecache        ##进行软件包缓存

mount

挂载 
 
    mount 分区目录 挂载目录 ##挂载分区,例如:mount    /dev/sdb1  /opt/sdb1
 
    mount 软盘目录 挂载目录 ##挂载软盘
 
    mount 光盘目录 挂载目录 ##挂载光盘
 
    mount -o loop iso文件 挂载目录 ##挂载文件或ISO镜像文件
 
    mount -t vfat windows分区 挂载目录 ##挂载NTFS或者FAT32文件系统
 
    mount -t smbfs -o username=用户名,password=密码 地址 挂载目录 ##挂载windows网络共享目录
 
卸载
 
    umount 分区名称或者挂载目录名称 ##卸载已挂载的目录
 
    fuser -km 分区目录 ##强制卸载 

find

文件搜索 
 
    find 目录 -name 文件名 ##从此目录查找此文件名的文件
 
    find 目录 -user 用户名 ##从此目录查找此用户所属的文件或者目录
 
    find 目录 -name *文件名 ##在此目录 中查找以此文件名结尾的文件或目录
 
    find 目录 -type f -mtime -天数 ##在此目录中查找在多少天内被创建或者修改过的文件
 
    find 目录 -type 文件类型 -atime +天数 ##在此目录中查找过去多少天未使用的文件

目前就先写这些了,等有时间了再进行补充

本文分享自微信公众号 - Java程序员那些事(zgsoft44),作者:凌枫

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-05-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 使用Guava RateLimiter限流以及源码解析

    首先通过RateLimiter.create(1);创建一个限流器,参数代表每秒生成的令牌数,通过limiter.acquire(i);来以阻塞的方式获取令牌,...

    用户6182664
  • 去重是distinct还是group by?

    distinct简单来说就是用来去重的,而group by的设计目的则是用来聚合统计的,两者在能够实现的功能上有些相同之处,但应该仔细区分,因为用错场景的话,效...

    用户6182664
  • MySQL 中 datetime 和 timestamp 的区别与选择

    MySQL 中常用的两种时间储存类型分别是datetime和 timestamp。如何在它们之间选择是建表时必要的考虑。下面就谈谈他们的区别和怎么选择。

    用户6182664
  • Linux基础(目录是什么鬼)

    在linux下,一个目录下放了很多文件,还有其他的子目录,但是目录的大小却总是只有4096字节。这是怎么回事呢?来听听北理工林思佳同学的分享。

    用户2617681
  • 简直不要太硬了!一文带你彻底理解文件系统

    所有的应用程序都需要存储和检索信息。进程运行时,它能够在自己的存储空间内存储一定量的信息。然而,存储容量受虚拟地址空间大小的限制。对于一些应用程序来说,存储空间...

    cxuan
  • 【Linux】学习笔记(四) Linux 文件操作

    韩旭051
  • linux基础篇01-测试常见linux命令集合一

    mv 目录名 目录名 目标目录已存在,将源目录移动到目标目录;目标目录不存在则改名

    IT苦逼一枚
  • 鸟哥的Linux私房菜笔记第六章(一)

    ls为查阅文件属性的指令,起对应完整文件名为:/bin/ls(这是绝对路径),那么为什么我们输入ls就会执行/bin/ls这个指令呢?这是因为环境变量PATH所...

    Johnson木木
  • Linux——目录、文件处理命令(上)

    mathor
  • 小白Linux入门--基础篇:Linux基本命令

    ls -al -a是显示所有档案及目录 (ls内定将档案名或目录名称开头为"."的视为隐藏档,不会列出)

    浩Coding

扫码关注云+社区

领取腾讯云代金券