学习C++前期准备

基于Linux下的环境搭建

1.linux系统介绍

linux系统介绍:

BCPL -> new B -> C -> UNIX -> Minix -> Linux

Linux 管理硬盘的能力很强,所以我们看到的只有一个分区
/        根目录 所有的文件都储存在它下面
/bin     存储系统命令 ls
/dev     设备文件(一切皆文件)
/media   多媒体文件,U盘,光盘,共享文件夹
/proc    记录程序运行时的资源的使用情况
/sbin    储存超级管理员使用的系统命令
/sys     储存系统相关文件
/var     储存系统相关日志
/boot    储存系统启动相关的文件
/etc     储存各种软件相关的配置文件
/lib     储存各种库文件 静态库.a 共享库so
/mnt     与其他系统进行映射的目录
/root    超级管理员权限的目录
/selinux 
/tmp     储存一些临时文件
/vmlinuz
/cdrom
/home    储存各个用户主目录
/lost+found  
/opt     储存各种软件的目录
/run     储存一些临时文件
/srv     储存一些服务启动后的程序
/usr     
..       上级目录
.        本级目录
~        用户主目录
注意:目录结构是倒悬结构,目录的切换只能上下,不能左右

*****************************************打字比较慢的同学练习:金山打字通***************

#####################################################
绝对路径和相对路径:
绝对路径:从根目录开始描述一个目录
相对路径:以当前目录(工作目录)开始描述一个路径

LInux系统命令:
    常用命令:
        ls 显示当前所在目录的文件
            -a 显示当前目录的所有文件
            -l 以详细的信息显示当前文件
        cd      进入一个目录
        clear   清理屏幕 或者 ctrl + l 
        pwd     获取当前目录的绝对路径
        whoami  获取当前用户名



文件相关的命令:

    注意:Linux下不是任何功能都对应以条命令

    touch filename 创建文件
    cat/more/head/tail 查看文件
        cat:把文件的所有内容直接显示到终端,适合查看内容较少的文件
        more:从文件开头开始显示文件内容,回车下一行,空格下一页,q退出
        head:查看前十行的内容
        tail:查看最后十行的内容

    rm filename 删除文件
        注意:不会经过回收站,直接删除

    cp scr dest 复制文件

    mv scr dest 移动文件
        注意:可以重命名文件

目录相关的命令:
    mkdir:创建目录
        -q:递归创建多级目录
    rmdir:删除目录
        rm -rf:可以删除非空目录
    cp -rf:复制目录
    mv:移动目录,重命名目录

网络相关命令:
    ifconfig:查看网络配置信息
        windows下是ipconfig
        修改IP地址和子网掩码:
    sudo ifconfig ethn 10.0.xxx.xxx netmask 255.255.xxx
    sudo ifconfig ethn up:启动网卡
    sudo ifconfig ethn down:禁用网卡


        ping ip地址/网址:测试网络是否连接
            windows下:只测试4次,-t可以一直测试,ctrl+c退出
            127.0.0.1 也叫本机地址,可以用来测试

    ftp ip地址:输入用户名和密码
        ls:
        cd:
        pwd:
        put:上传文件
        get:下载文件      
    采用明码传输,不够安全,一般公司内部使用
    telnet ip地址:
    采用明码传输,不够安全,一般公司内部使用 
    ssh 用户名@ip地址:
        采用加密方式传输,比较安全

    其他相关命令:
        tar:压缩\解压文件
            -zcvf:包名 压缩的文件名:压缩
            -zxvf:包名            : 解压
        chomd:更改文件权限
            chomd mmm filename m=x(4)+w(2)+x(1)
                mmm:用户;用户组员;其他人

        chmod +/-权限 filename:所有用户一起改变
        注意:目录一定要有执行权限才能进入

        find 位置 条件 关键:查询文件
            find ~ -name stdio.h

        sudo reboot:重启系统
        sudo init 0:关机
        sudo apt-get install 软件名:安装软件
        sudo apt-get update:更新软件源
        sudo apt-get upgrade:更新系统


    man key:查询帮助手册
        分章节管理内容
        1:系统命令
        2:系统函数
        3:标准库函数

附件:

2.linux环境安装步骤及环境前期配置

3.功能快捷键

Ubuntu系统使用小技巧:

Ctrl+alt+t:打开终端
Ctrl+l:    清理屏幕
Tab:       自动补全
up/down:   调出命令执行记录
Ctrl+Alt+方向键:   切换工作区
Alt+Tab:    切换任务
过滤:grep "关键字" 文件名
重定向、管道、通配符:
重定向:就是把命令的执行结果写入到文件中
    cmd > filename  把命令的执行结果以清空的方式写入到文件中,如果文件不存在则新建。
    cmd >> filename 把命令的执行结果以追加的方式写入到文件中,如果文件不存在则新建。
管道:相当于用一根管子把两个命令连接起来,一个命令的执行结果当做另一个命令的数据源
    cmd1 | cmd2
    find / | grep stdio.h
通配符:可以执行模糊命令
    ?  代表一个任意字符
    *  代表任意多个字符
        rm -rf / *
        
终端的配置文件:

打开 gedit ~/.bashrc 文件,在文件的末尾添加:
#
PS1='\u@\w\$ '

# 创建新目录并进入
mk()
{   
    mkdir $1 && cd $1
}
保存退出,关闭gedit
输入命令 source ~/.bashrc 使配置文件生效

简单的脚本文件:

脚本:由系统命令组成的带有执行权限的文本文件,执行脚本文件时被命令解释器读取并执行
    chmod +x filename.sh    touch a.c ...
    ./filename.sh

    chmod +x filenamef   gedit a.c ...
    在文件夹中双击filenamef 运行

打字练习软件:typespeed
sudo apt-get install typespeed
注意:窗口80*24 

vim编辑器:

在终端下采用纯键盘操作的一款文本编辑器,号称编辑器之神,可以升级(二次开发),可以扩展(安装插件)
基本用法:
    进入vim:vim filename.c 如果文件存在则打开,不存在则创建
    输入i:进入编辑模式,编写代码
    保存退出:按Esc键回到正常模式,输入ZZ保存退出
三大模式:
    正常模式:一般用于阅读文档,或者使用快捷键快速地修改文件
    插入模式:一般用于编辑文档,输入内容
    行底模式:一般用于配置vim,或者执行一些高级操作
模式切换:
    正常    输入i->     插入
    插入    Esc  ->     正常
    正常    输入: ->    行底
    行底    Esc  ->     正常
    注意:插入与行底不能直接切换
正常模式的操作:
    光标移动:
    h左 j下 k上 l右
    gg  光标跳转到第一行
    G   光标跳转到最后一行
    n回车 光标往下跳转n行
    n-    光标往上跳转n行
    vim filename +n     进入文件后光标跳转到第n行
    home    光标跳转行首
    end     光标跳转行尾
    pgup    向上翻一页
    pgdn    向下翻一页
    删除代码操作:
        x   删除一个字符
        nx  删除n个字符
        dw/de   删除一个连续的字符串,区别是删不删除后面的空格
        d$  从光标处删除到行尾
        d^  从光标处删除到行首
        dd  删除光标所在的一行
        ndd 删除n行
        dgg 删除到首行
        dG  删除到尾行
    复制代码操作:
        yy  复制一行
        nyy 复制n行
        p   粘贴到光标的下一行
        P   粘贴到光标的上一行
    移动代码:
        删除的内容会放在粘贴板上,使用p\P可以达到移动的效果
        xp 交换两个字符
    替换代码:
        r   替换一个字符
        cw  替换一个单词
        R   进入替换模式
    撤销代码:
        u   撤销上一次操作
        U   撤销整行的所有操作
        Ctrl+r  取消撤销操作
进入插入模式的操作:
    i   从光标处进入插入模式
    I   从光标所在一行的行首进入插入模式
    a   从光标下一个字符进入插入模式
    A   从光标所在一行的行尾进入插入模式
    o   从当前行下面插入一行空白行,进入插入模式
    O   从当前行上面插入一行空白行,进入插入模式
插入模式下的操作:
    Ctrl+p/n 自动补全 取变量名、函数名时尽量开头不同
    Ctrl+i   自动缩进,相当于Tab键
    Ctrl+j/m 相当于回车键
    Ctrl+c   相当于Esc键
自定义按键:
    Ctrl+z:保存退出功能
    Ctrl+x:保存并编译代码
    Ctrl+p:自动添加头文件和主函数

行底模式下的操作:
    w   保存文档
    q   退出文档
    wq  保存并退出
    q!  强制退出 
    x   保存并退出
    X   加密文档 输入两次密码,再保存退出就加密了
        解密: 行底模式输入 set key= 
        注意:ZZ只能保存文件内容,不保存文件属性,但wq保存内容和属性
    !cmd 在文件中执行系统命令,并返回 例如:!ls
    /key 在文件中查找关键词key ,n向下查找,N向上查找
    %s/old/new 全部替换,把old关键词替换成new
    set nu   设置显示行号
    set nonu 设置隐藏行号
    >n  n行代码整体向右缩进一次
    <n  n行代码整体向左缩进一次
    注意:在行底模式下,对vim的设置只是临时有效,如果想要长期有效需要把这些配置写入到vim的配置文件(~./vimrc)中,并保存

    vim ~/.vimrc

    for()
    {
        
    }
    学习vim的建议:
        1、适可而止
        2、大概需要两周适应
        3、Ubuntu自带的vim手册 vimtutor  

更多推荐

学习C++前期准备