Linux & 标准C语言学习 <DAY1>

Linux系统简单介绍:
    BCPL->New B->C->UNIX->Minix->Linux->gcc
    美国贝尔实验室 1968

    Linux管理硬盘的能力非常强,所以只有一个磁盘分区
    cd 路径名:进入某个目录
    ls 显示当前目录下的文件
    /   根目录,所有文件都存储在该目录下
    ~   用户主目录
    .   当前目录
    ..  上一级目录
    注意:Linux的目录结构是倒悬树型,目录的切换只能上下不能左右
   
    /usr    存储头文件
    /bin    存储系统命令文件
    /home   存储所有用户主目录文件            
    /media  存储多媒体文件、U盘、光盘、共享文件夹    
    /boot   存储系统启动相关文件  
    /sbin   存储超级用户命令文件  
   
相对路径和绝对路径:
    绝对路径:从根目录出发开始描述一个文件位置
        例如:cd /dev/bus/usb/001/
    相对路径:从当前目录(工作目录)出发开始描述一个文件位置
        例如:cd ./../../../cpu/

Linux系统命令:
    1、常用命令:
        ls  显示当前目录下有哪些文件
            -a 显示所有文件
                Linux中以.开头的都是隐藏文件
                Ctrl+h 显示隐藏文件
            -l  显示文件的详细信息
        cd 路径名
        clear   清理屏幕    Ubuntu Ctrl+l
        pwd     获取当前位置的绝对路径
        whoami  显示当前用户名
    2、普通文件相关的系统命令
        touch filename 创建文件
        rm filename    删除文件,不会经过回收站,要谨慎
        cat/more/head/tail filename
            cat 把文件的所有内容显示到终端,适合查看内容较少的文件
            more 按页显示文件内容,回车下一行,空格下一页,q退出
            head 只显示文件开头10行
            tail 只显示文件最后10行
        cp src dest 复制文件
        mv src dest 移动文件,也具备重命名的功能
    3、目录文件相关(一切皆文件)
        mkdir dirname 创建空目录
            -p  可一次性创建多层目录
        rmdir   只能删除空目录
            rm -rf 删除非空目录(很危险要谨慎)
        cp -rf  复制目录
        mv      移动、重命名目录
    4、网络相关命令
        ifconfig    查看网络配置信息
            windows下是ipconfig
            sudo ifconfig ethx down 禁用网卡ethx
            sudo ifconfig ethx up   启用网卡ethx
        ping ip/网址    测试网络连通性
            windows下默认只测试4次,/t可以连续测试 Ctrl+c退出
            127.0.0.1本机地址 可以用来测试网卡是否正常工作
        ftp ip地址
            输入用户名、密码
            远程登录ftp服务器
            是明文传输,不够安全、有窃听风险,但是对于公司和个人已经够用
        telent ip地址
            是明文传输,不够安全、有窃听风险
        ssh 用户名@ip地址
            通过加密方式传输数据,相对更安全

    5、其它相关命令
        chmod   修改文件权限
            mmm (m=r(4)+w(2)+x(1))
            [自己、同组、其它]
        chmod  mmm  filename 更改三组权限  
        chmod +/-rwx filenmae 统一增加\减少权限
        注意:目录文件必须有执行权限,才可以进入

        tar 压缩/解压文件
            tar -zcvf 包名 要压缩的目录  -》创建压缩包
                tar -zcvf 包名.tar.gz dir
            tar -zxvf 包名              -》解压压缩包
       
        find 位置 条件 查询内容
            例如:sudo find / -name stdio.h
                查询所有文件中名字叫做stdio.h的文件
       
        grep "关键词" 文件名    -》过滤内容
            例如:grep "printf" stdio.h
                查看在stdio.h中出现printf的语句
   
        关机:sudo init 0
        重启:sudo reboot
        更新软件源:sudo apt-get update
        更新系统:sudo apt-get upgrade
        安装软件:sudo apt-get install 软件名

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

Ubuntu系统的使用小技巧:
    1、Ctrl+l   清理屏幕
    2、Tab  快速自动补全命令、文件名
    3、Up\Down  调出历史命令
    4、Ctrl+Alt+t 打开终端
    5、Ctrl+Shift+t 在同一终端下新建标签页
    6、Ctrl+Alt+方向键  切换工作区

重定向、管道、通配符:
    重定向:把命令的执行结果输入到文件中
        cmd > filename  如果文件存在则清空后写入,不存在则新建
        cmd >> filename 如果文件存在则追加写入,不存在则新建

    管道:相当于一根管子把两个命令连接起来,把cmdA命令的执行结果作为cmdB命令的数据源
        cmdA | cmdB
        例如:sudo find / | grep "std"
            在所有文件中,过滤文件名包含std的文件
   
    通配符:可以进行模糊命令执行
        ?   替代任意的一个字符
        *   替代任意多个字符
            //  sudo rm -rf /*

修改终端配置文件:  
    1、通过 gedit ~/.bashrc 打开终端配置文件
    2、在末尾添加
        #精简命令提示符
        PS1='\u@\w$ '

        #新建空目录并进入
        mk()
        {
            mkdir $1 && cd $1
        }
        保存并关闭文件
    3、执行配置文件:source ~/.bashrc 才能生效
posted @ 2023-03-06 09:20  Phonyeee  阅读(24)  评论(0编辑  收藏  举报