Linux/C++系统编程 day1

基本操作

添加用户

  • useradd

  • adduser

    (新建一个三无用户,无home目录,无密码,shell为sh)

  • sudo useradd -m test -s /bin/bash

    (创建一个有家目录且shell为bash的用户)

添加目录

  • mkdir -p dir1

    (创建多级目录)

  • mkdir -m 700 test

    (建立目录同时设置权限)

  • 树形结构, /表示根目录

创建文件

  • touch file1

    (改变文件时间戳创建文件)

  • echo “hello world” > file1

    (打印文件某一行,并使用>重定向到文件中)

  • vim file2

    (进入vim并创建文件file2,此时输入的数据都会进入文件中,使用:q可退出)

  • cat > file2
    (创建文件,此时输入的数据都会进入文件中,使用ctrl+d退出)

复制文件

  • cp 源文件 目的文件

    (将源文件复制到目录文件中,如果有重名会覆盖,如果不存在会创建)

    • -i 可以给出检查提示
    • -r 可以递归复制源文件内容到目的文件
    • -f 强制覆盖

文件压缩

  • tar -czvf Day1_Hudy.tar.gz file1 file2

    (建立一个压缩文件,包含file1和file2,在f选项之后要立即接上打包后的名字和类型)

删除用户

  • userdel

    (删除用户)

删除目录

  • rmdir dir1

    (删除空目录)

删除文件

  • rm -r file1

    (递归删除该目录下所有文件)

    • -i 可以给出提示的删除
    • -f 可以强制性删除

查看用户

  • cat /etc/passwd

  • who

进入目录

  • cd ~
  • cd /home/用户名
  • cd
  • cd - 返回上一次目录
  • cd … 返回上一级目录
  • pwd 打印当前路径

打印目录

  • tree

    (以树形结构打印文件结构)

文件阅读

  • head -n 行数 文件名

    (打印该文件前多少行)

  • tail -n 行数 文件名

    (打印该文件尾多少行)

  • more 文件名
    (可以打开文件并单向向下滑动阅读)

  • less 文件名

    (可以打开文件并使用上下箭头阅读,可往回看)

  • ctrl+f ctrl+b

    (显示上一屏幕,下一屏幕)

文件显示

  • file 文件名

    (查看文件类型)

  • ls

    (列出当前目录内容)

    • . 文件名代表当前目录,linux以点开头的文件是隐藏的

    • …文件名代表上级目录

    • -i 会在目录项的最开头中给出索引号,即inode节点号

    • -l 详细信息

    • -a 所有信息,包括.和…

    • -h 符合人类习惯方式

    • 具体格式

      “linux下一切皆文件”

    在这里插入图片描述

    (目录文件空与否不能看文件大小是0还是预存的4096字节)

    (硬链接 文件系统由目录文件组织起来,内容在磁盘中只存一份)

  • date

    (查看当前时间)

  • ln file1 file2

    (将file2中该内容链到file1)

文件查找

  • find . -name file1

    (查找表达式:名字、时间、用户信息、文件类型、文件大小)

    (通配符加引号)

    • *匹配任意个字符
    • ?匹配1个字符
    • []匹配范围
    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cnk4zFuq-1610345465862)(C:\Users\Admin\AppData\Roaming\Typora\typora-user-images\image-20210101151453207.png)]

内容查找

  • grep -rEn ”e” file1

    (引号内为正则表达式)

    • .匹配任意字符
    • *0次或多次
    • ?0次或一次
    • ^开头 $结尾
    • \< >\以某个单词开头 结尾
    • i不区分大小写
    • (正则表达式)看作一个整体
    • \转义字符

配置密码

  • sudo passwd

    (更改用户密码)

切换用户

  • su

    (更改用户为超级用户)

  • exit 或者su 普通用户名

    (特权用户切换为其他用户)

  • 为保证安全ubuntu一般不允许使用root用户登录系统

文件移动

  • mv file1 file2

    (当前到当前就是改名,不需要-r选项,可以有-i或-f选项,树结构只修改指针)

文件权限

  • chmod u=r,g=w,o=x file1

  • chmod 421 file1

    (改变文件权限)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e0Ysdjf2-1610345465863)(C:\Users\Admin\AppData\Roaming\Typora\typora-user-images\image-20210101144917923.png)]

标准I/O

  • 重定向

  • 2>

    (stderr 标准错误输出,软链接存绝对路径, 重定向)

  • <

    (stdin 标准输入,文件描述符0,重定向)

  • **>**或者1>

    (stdout 标准输出,文件描述符1,重定向)

  • 2>>或者>>

    (追加模式错误追加和标准追加,添加在文件末尾,按行来)

    (<< we 是设置输入时候的终止符)

编码快捷键

  • ctrl + v j shift + i Tab Esc

    (统一换行)

  • ndG

    (从光标位置删除到第n行)

  • gg shift+v G = Esc

    (将VS的代码粘贴到Linux)

  • sz 文件名

    (小文件从Linux到Win)

    rz

    (小文件从Win到Linux)
    述符1,重定向)

  • 2>>或者>>

    (追加模式错误追加和标准追加,添加在文件末尾,按行来)

    (<< we 是设置输入时候的终止符)

Vim/Linux快捷键

  • ctrl + v j shift + i Tab Esc

    (统一换行)

  • ndG

    (从光标位置删除到第n行)

  • gg shift+v G = Esc

    (将VS的代码粘贴到Linux)

  • sz 文件名

    (小文件从Linux到Win)

    rz

    (小文件从Win到Linux)

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值