Linux基础与基本命令

Linux历史
    Linux是一套免费使用的类Unix操作系统
        linux创始人:  林纳斯·托瓦茨
    UNIX系统是一个多用户,多任务的分时操作系统。

Ubuntu的安装
    (1)vmware tools:主要用于与宿主机共享文件的
        sudo cp -rf /media/gec/VMware \Tools/   ~/
        cd ~/
        sudo tar vxf VMwareTools-10.0.5-3228253.tar.gz
        cd vmware-tools-distrib
        sudo ./vmware-install.pl
        ==>vmware tools就安装成功了
        我们可以设置共享目录啦
        在关闭Ubuntu下: 
            编辑虚拟机设置-->选项-->共享文件夹
            cd /mnt/hgfs/
                hgfs:Host Guest File Share   

APT(Advanced Packaging Tool)
    ubuntu中功能最强大的命令行软件包管理工具,用于获取,安装,编译,卸载和查询软件包,及检查软件包的依赖关系
    工作原理:
        /etc/apt/sources.list
    该文件的内容为ubuntu软件源服务器的地址
    把该文件换为国内的服务器地址:
        sudo cp sources.list.163 /etc/apt
        cd /etc/apt
        sudo mv sources.list sources.list.bak
        sudo mv sources.list.163 sources.list

        cat sources.list

    APT常用命令:
        apt-get:用于管理软件包,包括安装,卸载,升级等操作
        apt-cache:用于查询软件包相关的信息
        apt-proxy:用于搭建APT代理服务器
        apt-show-version:用于显示系统中软件包的版本信息
        apt-config:用于读取APT配置文件的简单工具
        apt-cdrom:用于将CD-ROM加入到软件源配置文件

    (1)apt-get 用法:
        apt-get subcommand   pkgname
                  子命令    特定的包名
        subcommand:
            update:下载更新软件包信息列表
            /etc/apt/sources.list只是列出了服务器的地址,至于这个服务器上到底有哪些软件,你事先不知道。
            我们用命令apt-get update这个命令,来把服务器上有哪些软件的列表信息下载下来。
            eg:  sudo apt-get update

            upgrade:将系统中所有软件包升级到最新版本
            eg:  sudo apt-get upgrade

            install:安装。下载所需软件包并进行安装配置
            eg: sudo apt-get install vim
                sudo apt-get install ibus-googlepinyin

            remove: 卸载软件包
                eg: sudo apt-get remove ibus-googlepinyin

            autoremove:将不满足依赖关系的软件包自动卸载
            source:源代码。下载某个安装包的源代码
                eg: sudo apt-get source vim
            clean:删除缓存区中已经下载的包文件
            autoclean:删除缓存区中老版本的已经下载的包文件
            check:检查系统中依赖关系的完整性
    (2)apt-cache命令完成查询软件源和软件包的相关信息
        apt-cache subcommand   pkgname
                    子命令    特定包名
        subcommand:
            search:根据正则表达式检索软件包
                eg:  sudo apt-cache search vim
            showpkg/show:获取软件包的常规描述信息
                eg:  sudo apt-cache show vim
            showsrc:获取源码包的常规描述信息
                eg:  sudo apt-cache showsrc vim
            depends:获取该软件包的依赖关系
                eg:  sudo apt-cache depends vim
            pkgnames:列出所有已经安装的软件包的名字
            stats: 获取软件包的统计信息

vim   vim 是vi的改进版本
    vi/vim是unix/linux中最基本,最常用,功能最强大的文本编辑器。
    vi/vim有两种模式:
    命令模式:键盘上所有输入的字符都当成命令(刚进入vim就是命令模式)
    输入模式:键盘上所有输入的字符都当成文本内容

    输入模式-->命令模式: Esc

    命令模式-->输入模式
        i:insert 进入输入模式后,光标不动
        I:insert 进入输入模式后,光标会移动到本行的行首

        o:open 向下开路。在光标的下一行,新开一行。
        O:open 向上开路。在光标的上一行,新开一行。

        a:append 追尾。进入输入模式后,光标向后移动一个字符。
        A:append 追尾。进入输入模式后,光标移动到行尾。


    vim的删除与修改命令
        x:删除光标所在的字符
        dd:delete删除光标所在的行,同时也有"剪切"的功能
            ndd:  n表示一个数字,删除光标及以下的n行
        r:replace 替换光标所在的单个字符
        R:replace 替换光标及后面的多个字符(按Esc键退出替换)

    vim退出命令
        :q (quit)不保存退出(若修改了文件会询问是否保存)
        :q! 不保存强制退出
        :w (write)保存
        :w filename 保存内容到指定的路径名filename(另存为)
        :wq 保存并退出
        :x  保存并退出

    vim撤销命令
        u: undo

    vim拷贝和粘贴命令:
        yy: yanked 把当前行的内容拷贝到剪贴板中去
            nyy把光标及以下n行的内容粘贴到剪贴板中去
        p: paste 将剪贴板中的内容贴在光标所在的行的后面
        P: paste 将剪贴板中的内容贴在光标所在的行的前面

    vim搜索命令
        /pattern(模式)
        eg:  /abc
        n: 光标跳到下一个搜索结果
        N:光标跳到上一个搜索结果

    显示行号
        :set nu
        :set nonu 取消行号
        :行号
             光标跳到指定的行
        :$
             光标跳到文件的最后一行

    vim配置文件在主目录下   .vimrc
        ls -a
        vim .vimrc

    Ctrl+z 挂起vim    fg命令返回

查看Linux说明手册(manual)
    man  commandname/functionname   完整的手册
    vim:  shift + K  查看光标所在函数的第一章手册
    info commandname  额外的帮助文档

基本的系统维护命令
    sync 同步,把缓冲区的数据写去文件。
    shutdown  关机   shutdown -h 0(立即关机)
    reboot  重启
    passwd [username] 修改用户密码
    su  username  切换用户
        sudo -s  进入root用户
    exit 退出用户或终端
    clear 清屏
    echo "string" 在标准输出上显示文字
    date 输出当前的日期
    ``反撇号(~键),里面加一个命令,整体表示引用命令的输出结果
        eg:
            B=`date`
            echo $B
    TAB键: 自动补全命令
    向上,向下方向键: 调出上一个/下一个命令

用户管理
    /etc/passwd :用户信息文件   
        用户名:口令:用户ID(UID):用户组(GID):用户主目录:用户shell

    /etc/group :用户组的信息文件,在Linux下面是分组来管理用户的
        组名:口令:GID号:成员列表

        这里组名是创建这个组的用户(组长)的名字
        GID是创建这个组的用户(组长)的ID

    adduser username //创建一个普通用户
    userdel username //删除一个用户

进程管理   process
    ps: process status 查看进程的状态信息
        -e: every 每一个
        -f: full 全部的
        ps -ef: 查看每一个进程的全部信息

        每个进程的信息都保存在一个文件目录中
        /proc/$PID

    top:以CPU占用率来实时排名进程
    kill:杀死一个进程
        kill -9  $PID

linux文件系统
    linux文件系统的组织形式 :树状
        绝对路径:以"/(根目录)"开头的路径,叫做绝对路径
        相对路径:不以"/(根目录)"开头的路径,叫做相对路径
            相对路径是以当前路径为参照的,系统查找文件本质上都是以绝对路径来查找的。
            在查找相对路径时,是把当前目录路径和相对路径合为绝对路径再查找。
    pwd:显示当前目录路径

    cd : change directory
        cd /目录名
        在每个目录下面都会有两个特殊的隐藏的目录
            .  :表示当前目录
            .. :表示上一层目录
        cd .. 返回上一层目录
        cd -  返回上一次目录
        ./程序名   运行该程序

    ls: list status 把某个文件(包含目录)的状态信息给列出来
        ls  [options]  [文件名/目录]
            options:
                -a: all ,把所有的文件都列举出来。
                    在linux下以.开头的文件,视为隐藏文件
                -l:把文件的详细信息给列举出来

    eg:
        -rwxrw-r--    1       gec      gec      40         Feb  16  19:40   test.txt
                  硬链接数   用户    用户组   文件大小       最后修改时间    文件名

        第一个字符表示文件类型:
        - :普通文件(regular file),ASCII文本文件,二进制可执行文件
        d :directory 目录(文件夹)
        b :block 块设备文件
        c :char 字符设备文件
        l :link符号链接文件,指向另外一个文件
        P :pipe 管道文件
        s :socket套接字文件

    下面的九个字符rwx表示文件对不同情况下的权限
        r:read 读的权限
        w:write写的权限
        x:excute可执行的权限,对目录可执行,表示可以进入目录

        分三组:
            user/group/other


    chmod :change mode 改变文件的模式(权限)
        chmod  权限  文件名
        权限有两种指定方式:
        (1)  u/g/o/a+/-  r/w/x
        (2)  以八进制的形式表示权限位
            0774

    rm:remove 移除,删除
        rm [options] DEST
            DEST:要删除的目标文件,既可以是普通文件,也可以是目录
            options:
                -r :recursive(递归),若DEST是目录文件,必须要用递归删除
                -f :force(强制)。非交互模式
                    交互模式:在正式删除前会询问用户是否确定要删除
                    非交互模式:不会询问直接删除

    cp: copy
        copy [options] SOURCE DEST
            SOURCE:源文件。既可以是普通文件也可以是目录
            DEST:目标文件。既可以是普通文件也可以是目录
            options:
                -r:recursive(递归)
                -f:force(强制)。非交互模式

    mv: move移动 (既可以移动普通文件,也可以移动目录)
        mv SOURCE DEST
        把SOURCE移动到DEST中去
        eg: mv 1.txt ../
             mv 1.txt 2.txt
             把1.txt改名为2.txt

    mkdir:make directory 创建一个目录
        mkdir  目录名
            -p:parent 创建目录时,如果父目录不存在,则一并创建

    rmdir:remove directory 删除一个空目录

    file:查看一个文件的格式。在UNIX里文件的扩展名不能决定文件的格式。

    显示文本文件的内容
        cat 把文本文件的内容全部一次性打印在终端
        more 分屏显示一个文本文件的内容,按Enter一行一行显示,空格键一屏一屏的显示,q退出
        less 分屏显示一个文本文件的内容,方向键上/下把内容前后滑动,q退出
        head -num 显示文件的前num行
        tail -num 显示文件的末尾num行

    创建链接文件

        硬链接    ln      target   link_name
        软链接    ln  -s  target   link_name

    文件的压缩和解压缩
        文件的压缩实质上分为归档和压缩两个过程
        归档文件:将一组文件或目录打包到一个文件中去
            tar [options] tarfile  filelist
                -c  create 创建一个归档文件
                -f  file  指定归档文件的名字
                -x  extract 释放一个归档文件

        压缩文件:将一个文件进行压缩
            压缩  gzip  xx  ==> xx.gz
            解压  gunzip xx.gz ==>xx

            压缩  bzip2 xx ==> xx.bz2
            解压  bunzip2 xx.bz2 ==> xx

        我们可以一步完成归档压缩这两个过程

        tar [options] tarfile  filelist
            -c create 创建一个归档文件
            -f file 指定归档文件的名字
            -v 显示归档或释放的过程信息
            -x extract 释放一个归档文件
            -z 由tar生成归档文件,然后由gzip压缩
            -j 由tar生成归档文件,然后由bzip压缩

        eg:
            压缩:
                tar -zcvf mp3.tar.gz  1.mp3 2.mp3 3.mp3
                tar -jcvf mp3.tar.bz2 1.mp3 2.mp3 3.mp3
            解压:
                tar -vxf mp3.tar.gz -C 目标目录
                tar -vxf mp3.tar.bz2 -C 目标目录




















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值