博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux常用命令(笔记)
阅读量:5905 次
发布时间:2019-06-19

本文共 5462 字,大约阅读时间需要 18 分钟。

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

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

2. 目录切换

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

3. 查看当前操作位置

> pwd

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

> whoami

5. 不同用户间的切换

//切换为root用户> su -              //效果同上> su -  root//向普通用户切换> su  普通用户名称//当前用户退回到之前用户> exit        su多次使用,用户会"累加",建议"su"和"exit"匹配使用test--->root--->test--->root--->test

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

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

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

> which 指令

8. 目录操作

    1)创建目录

//创建目录> 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) 移动(改名字)目录  (目录/文件 都可以操作)

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

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

//复制普通文件//file1被复制到dir1目录下一份,并给改名字为"原"> cp  file1  dir1             //file1被复制到dir1目录下一份,并给改名字为newfile> cp  file1  dir1/newfile     //复制目录 -r参数要求//递归方式拷贝目录//dir1被复制到dir2目录下一份,并给改名字为"原名"> cp -r dir1  dir2            //dir1被复制到dir2目录下一份,并给改名字为newdir> cp -r dir1  dir2/newdir     //dir3被复制到dir5目录下一份,并给改名字为"原名"> cp -r dir1/dir2/dir3   dir4/dir5

    4) 删除 remove

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

9. 文件操作

    1) 查看文件内容

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

//删除用户(删除passwd文件对应信息),此时其家目录需要手动删除># userdel username     //删除用户的同时也删除其"家目录"># 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)上一个:/内容/  或 /内容                                        //内容替换 "cont1"被替换为"cont2"//把光标所在行的"第一个"cont1替换为cont2:s/cont1/cont2/         //把光标"所在行"的全部cont1替换为cont2:s/cont1/cont2/g        //把"整个文档"中的全部cont1替换为cont2:%s/cont1/cont2/g

    3) 命令模式操作

        (1) 光标移动

a. 字符级    上(k)  下(j)  左(h)  右(l) 键b. 单词级    w  word下个单词首字母    e  end下(本)个单词尾字母    b  before上(本)个单词首字母c. 行级    $ 行尾    0 行首d. 段落级(两部分内容中间有空行,彼此成为段落)    {  上(本)个段落首部    }  下(本)个段落尾部e. 屏幕级(不给翻屏)    H  屏幕首部    L  屏幕尾部f. 文档级    G   文档尾行    1G  文档第一行    nG  文档第n行

        (2) 内容删除

dd    删除光标所在行n+dd  包括当前行在内向下删除n行内容x     字符级删除,删除光标所在字符cw    光标所在字符删除至单词结尾(是删除单词的便捷方式)      同时会进入编辑模式

        (3) 内容复制

yy      复制光标所在行n+yy    包括当前行在内向下复制n行内容p       对复制(删除)好的内容进行粘贴操作

        (4) 便捷操作

u       undo撤销,从文件打开后的所有操作都可以撤销r       对单词字符进行替换.       重复执行"最近"的一条指令J       合并上下两行

13. 权限设置

    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: 读、写、执行//ABC分别代表主人、同组、其他组用户权限> chmod  ABC  filename   //主人读、写、执行,同组读、写,其他读> chmod 764  filename   //满贯权限> chmod 777  filename   //所有用户没有任何权限> chmod 000  filename

 字母和数字方式取舍:

 权限修改的比较"少",就使用字母方式
 权限修改的比较"多",就使用数字方式
14. 在文件中查找指定内容
    grep  内容  (绝对/相对路径)目标文件

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

15. 查看文件占据磁盘空间大小

    du -h   文件/目录  

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

16. 文件查找

    find  现值查找目录  选项  选项值  选项 选项值....
    具体选项:
    (1) name 根据文件名字查找指定的文件

find  目录  -name  完整文件名称//"递归遍历"系统全部目录查找名字等于passwd的文件> find  /  -name  passwd[完整名称]    //递归遍历/etc及内部所有目录查找名字等于passwd的文件> find  /etc  -name passwd[完整名称]   //模糊查找文件名字以an开始的>find  目录 -name  "an*"[部分名称]

    (2) 对查找的目录层次进行限制

    -maxdepth  限制查找的最"深"层次
    -mindepth   限制查找的最"浅"层次

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

    (3) 根据文件大小进行查找

    size   单位

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

单位:

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

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

17. 开关机指令

    重启

> reboot

    关机

> poweroff

 

 

转载于:https://www.cnblogs.com/jkko123/p/6353898.html

你可能感兴趣的文章
java解析虾米音乐
查看>>
mysql 多行合并函数
查看>>
艾级计算机的发展与挑战
查看>>
RocketMQ事务消息实战
查看>>
手把手教你做出好看的文本输入框
查看>>
zabbix 3.2.7 (源码包)安装部署
查看>>
vsCode 快捷键、插件
查看>>
网络最大流问题算法小结 [转]
查看>>
iOS推送消息报错误“Domain=NSCocoaErrorDomain Code=3000”的可能问题
查看>>
kvm-1
查看>>
leetcode 64. Minimum Path Sum
查看>>
textkit
查看>>
CentOS7+CDH5.14.0安装CDH错误排查: HiveServer2 该角色的进程已退出。该角色的预期状态为已启动...
查看>>
The Oregon Trail 俄勒冈之旅
查看>>
Excel VBA连接MySql 数据库获取数据
查看>>
Developing a Service Provider using Java API(Service Provider Interface)(转)
查看>>
oschina程序开发
查看>>
nested exception is java.lang.NoClassDefFoundError: net/sf/cglib/proxy/CallbackFilter
查看>>
“正在注册字体”问题解决
查看>>
iOS开发-OpenGL ES入门教程1
查看>>