zoukankan      html  css  js  c++  java
  • Linux基本概念与常用命令

    发展历史
    
    Unix:最先被贝尔实验室一个大神开发出来,为了玩星际旅行游戏
    
    Minix:由于贝尔实验室收费闭源不能用,一个教授基于Unix开发出来的Minix
    
    Linux:也就是Linux之父李纳斯开发的
    
    Linux分为
    
    内核版:最核心的版本
    
    发行版:就是内核使用Linux操作系统,封装个性开发的,例如:Ubuntu,Redhat,max os等等...
    
    Linux应用领域:服务器领域的霸主,嵌入式领域的霸主
    
    Linux基本命令:
    
    ls:查看目录里面全部的文件与文件夹
    
    touch:创建文件
    
    mkdir:创建文件夹
    
    ls --help,man ls:查看命令帮助的两种方式
    
    gedit text.txt:编辑文件,废弃不用
    
    cat text.txt:显示文件内容
    
    ls t*:只查看t开头的文件
    
    ls t?:查看以t开头后面任意一位的文件
    
    rm text.txt:删除文件
    
    ls > text.txt:重定向,也就是把上一个命令显示的内容复制到text.txt这个文件里面去,类似备份
    
    ls -alh:竖着显示文件里面的内容,更详细
    ls;ls -alh:分号表示可以同时执行多个命令
    ls -alh /bin:比如当前在/home/python文件夹下,ls -alh /bin并不是显示python文件下面的bin文件夹里的文件,而是根目录下bin文件夹的文件
    ls -alh /bin >> 11.txt
    与
    ls -alh /bin > 11.txt
    区别就是:>覆盖,>>追加在文件末端
    
    more 11.txt与cat 11.txt区别就是cat一次过全部显示,more一次只显示一屏
    
    ls -alh /bin :这样显示出来bin文件里面的内容非常多,查看不好查看。这时候可以用到命令管道“|”
    ls -alh /bin | more:这样就是把|前面的内容放到管道里面去,再右more方式打开,这样就可以F下翻显示,B上翻显示
    
    cd /bin/两次tab :不知道bin文件夹里面有什么文件,两下tab就可以自动显示出来
    
    cd - :回到上一次的路径
    cd ~ :回到Home路径
    Ctrl+c:不执行命令
    tree:以树状结构显示文件夹里面的文件
    创建A/B/C文件夹:mkdir A/B/C -p(-P无效,是小写的-p)
    --以上命令都要注意大小写,是区分大小写的
    
    rmdir:删除非空文件夹
    rm A文件夹 -r:只要加上-r就可以强制删除
    ln 1.txt 1_hardlink.txt:就是1.txt创建一个硬连接1_hardlink.txt文件,说白了就是复制文件,ln -s
    ls -lh比ls -alh的好处就是不显示隐藏文件和一堆点点...的文件

    ll:实际直接用ll即可,可以看到文件大小

    find / -name "*123*" :根目录下找中间有123的文件名
    tar -cvf text.tar *.py :tar是命令,-cvf是选项,意思就是把.py结尾的文件打包成text.tar压缩文件
    (原包没有删除,并且用这个命令并没有压缩,必须把tar改成.gz,并且-cvf改成-zcvf)
    tar --zcvf text.gz *.py:压缩
    tar -xvf text.tar:解包
    tar -zxvf text.gz :解压

    tar -jcvf xxx.tar.bz2 *.py:压缩成xxx.tar.bz2格式的压缩文件,比.gz稍微大一点
    tar -jxvf xxx.tar.bz2:解压bz2压缩包

    zip xxx.zip *.py:压缩成zip格式,很大
    unzip xxx.zip:解压zip

    tar -zxvf xxx.tar.gz *.py -c /bin :加上-c压缩到指定文件夹下

    cal:查看日历
    car -y 2008:查看2008年
    date:查看当前时间
    date "+%Y年%m月%d日":2018年6月17年,大Y显示2018,小y显示18

    ps -aux:查看进程
    top:查看进程,这个比ps好,最大内存动态排前面
    htop:查看进程,这个最屌,信息最全
    kill pid:先htop查看pid,就是继承的id,
    kill -9 pid:-9强制关闭进程

    reboot:重启
    shutdown -h 20:20:八点二十关机
    shutdown -h +20:十分钟后关机

    df -h:查看硬盘使用情况

    ifconfig:查看ip
    ifconfig ens33 192.168.8.248:修改IP地址,如果报错,就加上sudo

    useradd bishige:添加新用户(默认没有密码)
    passwd bishige :设置密码
    whoami:查看当前用户
    exit:退出当前用户
    su bishige:注销当前用户。登录bishige

    查看是否成功创建:cat /etc/passwd:如果创建新用户成功,在这个文件最底部就会有这个新用户的记录
    sudo useradd bishige -m:创建一个bishige名字的用户,并且家目录叫bishige,就是home文件夹下面
    目录带有一个小房子

    ssh bishige@192.168.8.248:远程登录 ,用户名+@+IP地址

    ctrl+shif+T:终端打开多个窗口

    who:查看有几个人登录了这个服务器,后面带IP的就是通过ssh命令远程登录的


    sudo userdel -r xxx:删除用户,加上-r就是连这个用户的家目录也一起删除
    su - xxx:加上-就是切换到xxx这个用户的同时,路径也切换到xxx的根目录去

    sudo -s:切换到root超级管理员

    创建用户组
    groupadd XXX
    groupdel xxx
    groupmod查看有哪些组,或者用cat /etc/group命令查看

    为新建的用户组增加管理员权限,默认通过useradd的用户是没有管理员权限的,所以很多命令要加上sudo
    sudo usermod -a -G adm XXX
    sudo usermod -a -G sudo XXX
    只要执行这两句就可以为XXX用户加上管理员权限,以后就不用sudo了

    cat /etc/group | grep sudo
    cat /etc/group | grep adm   
    其实可以通过这两个命令找到group文件夹里面的这两个文件,如果你新建的用户在这个文件里
    那么就是有管理员权限的,但是默认通过useradd创建的用户是没有的

    chgrp xxxx text.txt:就是把text.txt这个文件改成xxxx组的,那么以后设置xxxx这个组的权限就可以
    控制text.txt文件的访问权限了
    chown yyyy text.txt:修改text.txt文件所属的用户


    vi与vim命令,vim比vi更牛
    vim text.py进入vi模式
    输入i:在下一位开始编辑
    输入I:在行首开始编辑
    输入a:类似insert
    输入A:在行末开始编辑
    输入o:下一行开始编辑
    输入O:上一行开始编辑
    上面的命令都是进入编辑模式

    输入esc,进入命令模式
    输入:,进入末行模式
    输入wq,保存退出

    输入esc,就是回到命令模式

    yy:复制,4yy就是复制下面4行
    p:粘贴
    dd:删除,4dd删除下四行,剪切也是用dd

    H:左
    L:右
    J:下
    K:上

    ctrl+F:下翻一页
    ctrl+B:上翻一页

    18G:快速定位到18行,1G就是首行,
    G:到最后一行
    gg:回到第一行
    w:一个一个单词后跳
    b:一个一个单词钱跳

    D:剪切光标当前行后面所有内容
    d0:剪切光标当前行前面所有内容
    x:删除后一个
    X:删除前一个
    u:撤销
    ctrl+r:前进

    v:选中代码(直到光标位置)
    V:选中代码(光标所在整行)
    v+lj+>>:右下选中代码,>>就是tab
    dw:删除光标所在单词
    {:跳到上一段代码开头
    }:下一段代码开头
    r:替换一个
    R:替换多个
    /:搜索,m下一个结果,M上一个结果
    %s/aa/bb/g:把aa替换成bb
    1,10s/cc/ee/g:把1到10行的cc替换成ee

    w:保存
    q:退出
    q!:强制不保存退出
    wq:保存退出
    shift+zz:等同于wq,不过是在命令模式下操作的
  • 相关阅读:
    linux 统计文件行数的命令效率
    使用mysqldump导入不成功解决方法
    shell中获取当前目录
    shell读取文档中的命令并执行
    读取文件,文件内容包含空格Tab和回车提取想要的数据
    ls命令中的--time-style使用
    Vmware中网卡未启用,安装系统后再启用网卡,eth0如何设置
    lvm逻辑卷扩展方法
    linux小技巧 一
    解决ARCGIS10.2与VS2013不兼容
  • 原文地址:https://www.cnblogs.com/BOSET/p/9190746.html
Copyright © 2011-2022 走看看