前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >常用linux命令

常用linux命令

作者头像
用户6182664
发布2020-05-12 16:37:06
1.4K0
发布2020-05-12 16:37:06
举报
文章被收录于专栏:Java程序员那些事

关机/重启

代码语言:javascript
复制
关机

    poweroff    ##立即关机

    shutdown -h now     ##立刻关机

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

    halt    ##立刻关机

    init 0        ##关闭系统

    shutdown -c    ##取消定时关机

     logout        ##注销

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

重启

    shutdown -r now    ##立即重启

    reboot        ##立即重启

系统信息

代码语言:javascript
复制
    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    ##查看防火墙设置
 

文件以及目录

代码语言:javascript
复制
目录
 
##讲到目录必须要说一说绝对路径和相对路径了。绝对路径就是把路径写完整,也就是说从根(/)目录开始写起;相对定位是从当前目录开始,也就是从当前目录,相对定位代表就是"..";
 
    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文件编辑器

基本用法:

代码语言:javascript
复制
vim 文件名称 

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

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

代码语言:javascript
复制
命令模式:
 
    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! ##强制退出
 
 ##注意!如果在修改后不保存设置直接退出需要强制退出

打包压缩

代码语言:javascript
复制
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指定文件位置 

用户和组

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

权限所有者

权限分为下面三种权限:

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

修改文件权限

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

修改文件所有者

代码语言:javascript
复制
  chmod 用户:用户组 文件 ##给文件设置所属用户和用户组
 
    chmod 用户 文件 ##给文件设置所属用户
 
    chmod :用户组 文件 ##给文件设置所属组

RPM

代码语言:javascript
复制
 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内核的操作系统

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

mount

代码语言:javascript
复制
挂载 
 
    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

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java程序员那些事 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关机/重启
  • 文件以及目录
  • vim文件编辑器
  • 打包压缩
  • 用户和组
  • 权限所有者
    • RPM
      • YUM
        • mount
          • find
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档