linux常用指令 - 个人文章 - SegmentFault 思否

https://segmentfault.com/a/1190000011068772


  1. 查看目录下有什么文件信息

    ls //list查看当前目录下有什么文件
    ls -lls ll //list -list 通过详细内容形式查看目录下的文件内容
    ls 目录 //查看指定目录下文件名字信息
    ls -l 目录 //以详细列表形式查看指定目录下文件名字信息
    ls -a //list all 查看全部文件,包括隐藏文件
    ls -al //list list all 以详细列表形式查看全部文件,包括隐藏文件
    ls -i //查看目录下文件名字的索引号码

  2. 目录切换

    cd 目录名字
    cd.. //向上级目录切换
    cd~ //快速切换回自己的家目录

  3. 查看当前操作位置

    pwd

  4. 查看操作者信息(是谁在操作系统)

    whoami

  5. 不同用户间的切换

    su - //切换为root用户
    su - root //效果同上
    su 普通用户名称 //向普通用户切换
    exit //当前用户退回到之前用户

    su多次使用,用户会“累加”,建议“su” 和 “exit”匹配使用

  6. 图形模式与命令模式进行切换

    init 3 //图形 向 命令模式切换
    init 5 //命令 向 图形模式切换

  7. 查看指令对应的可以执行程序文件位置

    which 指令

  8. 目录操作
    1)创建目录 make directory

    mkdir newdir
    mkdir -p newdir/newdir/newdir //递归方式创建多级目录
    newdir新目录多于1个层次(2/3/4等)就设置-p参数,如果就一个新的目录则无需-p参数
    mkdir dir/newdir
    mkdir dir/dir/newdir
    mkdir -p dir/newdir/newdir

    2) 移动(改名字)目录 move
    (目录/文件 都可以操作)

    mv dir1 dir2 //dir1移动到dir2目录下,并给改名字为"原名"
    mv dir1 dir2/newdir //dir1移动到dir2目录下,并给改名字为newdir
    mv dir1/dir2 dir3/dir4 //dir2移动到dir4目录下,并给改名字为"原名"
    mv dir1/dir2 dir3/dir4/newdir //dir2移动到dir4目录下,并给改名字为 newdir
    mv dir1/dir2 ./ //dir2移动到 当前 目录下,并给改名字为"原名"
    mv dir1/dir2 ./newdir //dir2移动到 当前 目录下,并给改名字为newdir

    3) 复制(改名字)目录 copy
    (目录/文件 都可以操作)
    ① 复制普通文件

    cp file1 dir1 //file1被复制到dir1目录下一份,并给改名字为“原名”
    cp file1 dir1/newfile //file1被复制到dir1目录下一份,并给改名字为newfile

    ② 复制目录 -r参数要求
    //recursive递归方式拷贝目录

    cp -r dir1 dir2 //dir1被复制到dir2目录下一份,并给改名字为“原名”
    cp -r dir1 dir2/newdir //dir1被复制到dir2目录下一份,并给改名字为newdir
    cp -r dir1/dir2/dir3 dir4/dir5 //dir3被复制到dir5目录下一份,并给改名字为"原名"

    4) 删除 remove

    rm filename //普通文件删除
    rm -r dir //删除目录[无视层次]需要-r参数
    rm -rf 文件 //recursive force 递归强制删除文件,force 避免删除隐藏文件的提示
    rm -rf / //递归强制方式删除系统里边的全部内容

  9. 文件操作
    1) 查看文件内容

    cat filename //在终端显示文件全部内容
    more filename //通过"敲回车"方式从第一行逐行查看文件内容,不支持回看,q键退出查看
    less filename //"上下左右"键方式查看文件各个部分内容,支持回看,q键退出查看
    head -n filename //查看文件“前n行”内容
    tail -n filename //查看文件“末尾n行”内容
    wc filename //计算文件行数

    2) 创建文件

    touch filename 
    touch dir/filename

    3) 追加内容(文件不存在会“自动”创建)

    echo 内容 > filename //给文件“覆盖写”方式追加内容
    echo 内容 >> filename //给文件纯追加内容

  10. 用户操作
    user,配置文件/etc/passwd
    1) 创建 add

    useradd username //创建用户会同时创建同名组
    useradd -g 组编号 username //创建用户的同时设置组别
    useradd -g 组编号 -u 用户编号 -d 家目录 username //创建用户同时,指定组别、用户编号、家目录
    2) 修改 modify
    usermod -g gid username //修改组别是常见操作
    usermod -g gid -u uid -d 家目录 -l newname username//修改组别、用户编号、家目录、名字

    注意:家目录修改后需要手动创建,不同于创建用户家目录设置

     创建用户时设置家目录,该目录会自动创建
    修改用户家目录时,该目录不会自动创建(需要手动创建)

    3) 删除 delete

    userdel username //删除用户(删除passwd文件对应信息),此时其家目录需要手动删除
    userdel -r username //删除用户的同时也删除其“家目录”

  11. 组别操作
    group, 配置文件/etc/group
    1) 创建 add

    groupadd groupname

    2) 修改 modify

    groupmod -g gid -n newname groupname

    3) 删除 delete

    groupdel 组名

    //注意:只有空组(内部没有用户信息)才允许删除

  12. vi编辑器使用
    1) 命令模式-->编辑模式切换(插入/Insert)

    a "光标" 向后移动一位
    i "光标" 和 "内容" 没有变化
    o "新"起一个空白行
    s "删除"光标所在字符

    2) 尾行模式作用

    :q quit退出编辑器
    :wq write quit 保存并退出
    :w write 保存
    :q! 强制退出(不要保存)
    :w! 强制写保存
    :wq! 强制保存退出

    :set number 或 set nu //给编辑器设置行号
    :set nonumber 或 set nonu //取消行号设置

    :数字 光标跳转到数字所在行
    :/内容/ 或 /内容 //内容查找,小写n(next)下一个,大写N(next)上一个

    :s/cont1/cont2/ //把光标所在行的"第一个"cont1替换为cont2
    :s/cont1/cont2/g //把光标"所在行"的全部cont1替换为cont2
    :%s/cont1/cont2/g //把"整个文档"中的全部cont1替换为cont2

3) 命令模式操作
① 光标移动
a. 字符级
上(k) 下(j) 左(h) 右(l) 键
b. 单词级
`w` word下个单词首字母
`e` end下(本)个单词尾字母
`b` before上(本)个单词首字母
c. 行级
`$` 行尾
`0` 行首
d. 段落级(两部分内容中间有空行,彼此成为段落)
`{` 上(本)个段落首部
`}` 下(本)个段落尾部
e. 屏幕级(不给翻屏)
`H` 屏幕首部
`L` 屏幕尾部
f. 文档级
`G` 文档尾行
`1G` 文档第一行
`nG` 文档第n行 ② 内容删除
`dd` 删除光标所在行
`n+dd` 包括当前行在内向下删除n行内容
`x` 字符级删除,删除光标所在字符
`cw` 光标所在字符删除至单词结尾(是删除单词的便捷方式)
同时会进入编辑模式 ③ 内容复制
`yy` 复制光标所在行
`n+yy` 包括当前行在内向下复制n行内容
`p` 对复制(删除)好的内容进行粘贴操作 ④ 便捷操作
`u` undo撤销,从文件打开后的所有操作都可以撤销
`r` 对单词字符进行替换
`.` 重复执行"最近"的一条指令
`J` 合并上下两行
  1. 权限设置
    1) "字母相对方式"设置权限
    权限: r读 w写 x执行
    用户: u主人 g同组 o其他组
    chmod u+/-rwx, g+/-rwx, o+/-rwx 文件

    不同用户通过",逗号"分隔
    在同一个用户里边,+/-只能用“一个”
    "rwx"在同一个用户里边可以设置一个或多个
    "ugo" 每次权限操作可以设置一个或多个用户

    chmod u+rw filename //主人增加读、写
    chmod g-rx filename //同组删除读、执行
    chmod u-w,g+x filename //主人删除写,同组增加执行
    chmod o+w,o-x filename //其他组用户“增加写、删除执行”

    2) "数字绝对方式" 设置权限
    读:4 写:2 执行:1
    权限类型:
    0: 没有权限
    1: 执行
    2: 写
    3: 写、执行
    4: 读
    5: 读、执行
    6: 读、写
    7: 读、写、执行

    chmod ABC filename //ABC分别代表主人、同组、其他组用户权限
    chmod 764 filename //主人读、写、执行, 同组读、写, 其他读
    chmod 777 filename //满贯权限
    chmod 000 filename //所有用户没有任何权限

    字母和数字方式取舍:
    权限修改的比较"少",就使用字母方式
    权限修改的比较"多",就使用数字方式

  2. 在文件中查找指定内容
    grep 内容 (绝对/相对路径)目标文件

    grep sbin /etc/passwd //在passwd文件中查找sbin字样,会把sbin所在行的内容都输出

  3. 查看文件占据磁盘空间大小
    du -h 文件/目录

    du -h 文件名称 //以k M的形式查看文件占据磁盘空间大小

  4. 文件查找
    find 现值查找目录 选项 选项值 选项 选项值....
    具体选项:
    ① name 根据文件名字查找指定的文件
    find 目录 -name 完整文件名称

    find / -name passwd[完整名称] //"递归遍历"系统全部目录查找名字等于passwd的文件 
    find /etc -name passwd[完整名称] //递归遍历/etc及内部所有目录查找 名字等于passwd的文件

    find 目录 -name "an*"[部分名称] //模糊查找文件名字以an开始的

    ② 对查找的目录层次进行限制
    -maxdepth 限制查找的最"深"层次
    -mindepth 限制查找的最"浅"层次

    find / -name passwd -mindepth 3 -maxdepth 4 //在3到4个层次的目录里边定位passwd文件

    ③ 根据文件大小进行查找
    size 单位

    find ./ -size 50c //在当前目录下查找大小[等于]50个字节的文件

    单位:

    数量         单位      实际大小
    100 -------> 512字节:【100*512字节】
    50c -------> 字节 : 【50字节】
    50k -------> 千字节: 【50*1024字节】
    50M -------> 兆字节 【50*1024*1024字节】

    find ./ -size +50c //在当前目录下查找大小[大于]50个字节的文件
    find ./ -size -50c //在当前目录下查找大小[小于]50个字节的文件

  5. 开关机指令

    reboot //重启
    poweroff //关机

【ZZ】Linux常用指令的更多相关文章

  1. linux常用指令

    整理下来的linux常用指令 mount [-t 文件系统] 设备文件名 挂载点挂载命令,一般用于在挂载ISO,或者其他比如U盘等设备时使用,[-t iso9660]为固定格式,可写可不写,非必写项. ...

  2. ROS零门槛学渣教程系列(二)——Linux常用指令:mkdir、tar、 unzip、cp、scp、mv、rm、find、apt、ssh

    Linux常用指令通过上一教程,我们获得了ubuntu系统.Linux是一个很大的领域.但不要紧张,我们一步步来就是了,跟着教程,需要能用到新知识,会提前介绍给大家.下面学习几个常用的Linux指令. ...

  3. Linux常用指令【转载】

    [收藏]Linux常用指令[转载] $ 命令行提示符 粗体表示命令 斜体表示参数 filename, file1, file2 都是文件名.有时文件名有后缀,比如file.zip command 命令 ...

  4. Linux常用指令(三)

    进入京东运维组实习,收到了很多同事的热心指导,自己也努力学习,按照他们给出的学习计划,真的很充实,学到了很多不只是开发方面的知识. 以下简单记录下自己的笔记,方便以后查阅. 1.文件系统 Linux系 ...

  5. Linux常用指令整理

    Linux常用命令整理 快捷键 [Tab] [Tab] 接在一串指令的第一个字的后面,则为"命令补全": [Tab] 接在一串指令的第二个字以后时,则为"文件补齐&quo ...

  6. Linux常用指令总结

    概述 因为平时不是经常使用Linux系统,每次用到都需要重新温习一遍,这里对自己平时经常使用到的指令做个小结,方便后面直接查阅. 常用指令 登陆root指令 sudo su - 安装软件及卸载指令 d ...

  7. linux常用指令学习记录

    前言 本文主要为学习贴,用来记录一些 linux上的常用指令 以供参考. 文件内容查看 cat 从上往下阅读文件内容 cat [-AbEnTv] ${FILE_NAME) cat -n /etc/is ...

  8. Linux常用指令全集

    Linux简介及Ubuntu安装 常见指令 系统管理命令 打包压缩相关命令 关机/重启机器 Linux管道 Linux软件包管理 vim使用 用户及用户组管理 文件权限管理 大牛笔记-www.weix ...

  9. Linux | Linux常用指令学习笔记

    @ 目录 前言 1. Linux目录结构: 2. 运行级别: init.systemctl 3. vim相关快捷键: 4. 开关机相关命令: shutdowm.halt.reboot.sync.log ...

随机推荐

  1. L1-059 敲笨钟 (20 分)

    微博上有个自称“大笨钟V”的家伙,每天敲钟催促码农们爱惜身体早点睡觉.为了增加敲钟的趣味性,还会糟改几句古诗词.其糟改的方法为:去网上搜寻压“ong”韵的古诗词,把句尾的三个字换成“敲笨钟”.例如唐代 ...

  2. Redis(三)源source编译

    背景: 自己电脑是win7 32bit的,而想要Redis4.0的版本,但是在网上没找到,所以自己干脆download源source,自己build,安装. 最后,目前达到的状态是,windows下s ...

  3. 【mybatis源码学习】利用maven插件自动生成mybatis代码

    [一]在要生成代码的项目模块的pom.xml文件中添加maven插件 <!--mybatis代码生成器--> <plugin> <groupId>org.mybat ...

  4. vernemq 集群 docker-compose 搭建简单试用

    vernemq 是一款开源的mqtt broker, 支持cluster 模式部署,而且部署比较简单 以下是一个使用docker-compose 搭建环境的demo 环境准备 docker-compo ...

  5. 04C++const增强、枚举的增强

    #include <iostream> int main(void) { //const定义常量--->const意味着只读 const int a; int const b; // ...

  6. 数学与猜想 数学中的归纳和类比 (G. 波利亚 著)

    第一章 归纳方法 (已看) $1. 经验和信念 $2. 启发性联想 $3. 支持性联想 $4. 归纳的态度 第二章 一般化,特殊化,类比 (已看) $1. 一般化,特殊化,类比和归纳 $2. 一般化 ...

  7. shutdown和close

    close close 一个套接字的默认行为是把套接字标记为已关闭,然后立即返回到调用进程,该套接字描述符不能再由调用进程使用,也就是说它不能再作为read或write的第一个参数,然而TCP将尝试发 ...

  8. 合并两个sorted ranges(merge和inplace_merge)

    merge //版本一:用operator <比较元素 template <class InputerIterator1,class InputerIterator2,class Outp ...

  9. 图像识别的前期工作——使用pillow进行图像处理

    pillow是个很好用的python图像处理库,可以到官方网站下载最新的文件.如果官网的任何PIL版本都不能与自己的python版本对应,或安装成功后发现运行出错,可以尝试从一个非官方的whl网站下载 ...

  10. MongoDB journal与oplog解惑

    journal journal 是 MongoDB 存储引擎层的概念,目前 MongoDB主要支持 mmapv1.wiredtiger.mongorocks 等存储引擎,都支持配置journal. M ...