linux day02 基础知识的学习

day02
一、路径表示 (重)
      点(.):当前路径,表示所在的位置,每个目录中都有点目录
      点点(..):表示上一层目录,比如现在目录是/home/student/day01中,..表示student目录
      波浪线(~):表示每个用户的主目录,如果是student用户,~的路径是/home/student/ 如果是danny用户,~表示/home/danny/
     根目录(/):这个linux系统的根目录,相当于windows的c盘。
    绝对路径:从根目录开始的路径,不管当前目录在什么位置,使用绝对路径都可以找到指定的位置,指定位置不会变。表示 /home/student
   相对路径:相对于某个目录而言的路径,比如说我在楼下,如果我当前的位置在10楼,我的楼下是9楼,如果我在2楼,我的楼下是1楼,所以相对路径是会随着你当前路径而改变的。在平常开发过程中,尽量使用相对路径。表示 ../danny/
   练习1:现在在~目录,请用相对路径表示方式,跳转到dev目录。
   练习2: 现在在桌面,请用相对路径和绝对路径表示方式,跳转到~/文档

二、linux的常用命令
  1.cd 跳转目录 (重)
     格式1: cd 目录名        表示跳转到指定目录   
     格式2: cd                   表示跳转到~目录
     注意:如果目录名只是一个文件夹名称,默认会加上./ 
     例如: cd day01    会自动转换成 cd ./day01
                cd ..    跳转到上一层
   
   2.pwd   查看当前所在路径   格式 pwd
   
   3.  mkdir 创建目录(重)
      格式1: mkdir 目录名       ;     在当前目录创建目录
      格式2: mkdir -p 目录1/目录2  创建多级目录
      格式3: mkdir -m 权限 目录
      mkdir  day01/danny   ~ day01 在day01中创建danny目录
      注意:如果目录名只是一个文件夹,会自动加./
     练习: 在桌面创建day02目录,创建者权限只有可读,同组有可读和可执行权限,其他人只有可读权限。
    
    4.rmdir 删除目录 (重)
       格式: rmdir 目录名                  删除空目录
       格式: rmdir -p 目录1/目录2    多级别删除
       注意:目标目录必须为空,否则没法删除

     5.ls 查看指定目录的内容(重)
        格式: ls 目录       打印指定目录下的内容
        格式: ls -l            查看文件的详细信息
        格式: ls -a          查看当前目录下的所有文件(包含隐藏文件)
        格式: ls -d          列出当前目录,也就是目录本身
        格式: ls -t          按照修改时间的先后顺序排序列出
        格式: ls -r          按照文件名的逆序排序显示
        格式: ls -R         按照递归的方式把子目录中的所有文件打印出来
        补充: 通配符* 表示0~多个字符,  比如:abc*中 abc;abcd;abc1;abcdefg;
                   通配符? 表示一个字符:比如abc?中 abcd   abc1  但abcdef不符合
                  通配符 [...] 表示在中括号中选一个指定的字符; ls a[df].conf ,表示 第一个字母是a 第二个字母是d或者f的conf文件
                  通配符[-]:表示在a到d范围之内的一个字符;例如: ls a[d-f].conf ,第一个字母是a,第二个是d到f中的任意一个,的conf文件
                   通配符[^...]: 表示不存在括号中的字符。ls ?[^abc]*.conf,表示:第一个字母任意,第二个字母不是abc的conf文件
         练习: 请打印出第二个字母是a b c 的conf文件  ls ?[abc]*.conf


三、系统管理命令
    1.用户信息文件。 /etc/passwd 保存用户信息数据
       student :   x    :  1000   :   1000:  ,,,:/home/student: /bin/bash
       用户名     密码    用户ID     组id        用户主目录       shell位置
       可以自己设置用户id,系统用户的id从1到999,普通用户从1000+
       root的用户id是0
    2.adduser 创建新的用户
       格式:adduser 用户名(重)
        注意: 创建用户后,会在home目录下用户目录,在passwd中记录用户信息,如果权限不够,在前面加上sudo,密码是8
        参数: --home:设置用户主目录   -uid 设置用户id    -gid 设置组id
        例如: adduser --home /home/danny666 -uid 8888 -gid 8888  danny688
       
    3.passwd 修改用户密码
    格式: passwd  用户名  (重)
    注意:修改密码不可以和原密码相同,密码长度不可以低于6位,不可以太简单。
     
    4. su 切换用户(重)
    格式: su 用户名
    注意: 需要输入密码,如果权限不够需要加sudo

   5.userdel 删除用户
   格式: userdel 用户名   ;其中-r是删除主目录

四、文件处理命令
   1.查看帮助文档
     第一种方式:man + 命令   
     第二种方式: 命令 --help
     第三种方式: whereis + 命令   查看命令的帮助文档位置
   
   
   2. echo 在屏幕上输出
       格式: echo 字符串  直接在屏幕上打印
       管道:echo “danny shuai”| cat >hello.c

   3. cat  在屏幕上打印信息(重)
    格式: cat 文件名     打印文件信息,不可以在cat后加单独的目录
    格式: cat 文件1 > 文件2    覆盖重定向。 把文件1中的内容拷贝到文件2中。
   格式: cat 文件1 >> 文件2  追加重定向。把文件1中的内容追加到文件2的末尾。
   格式: cat      > 文件1         输入覆盖重定向。把键盘输入的内容覆盖到文件1中。 结束用ctrl+c
   格式: cat   >> 文件1       输入追加重定向。把键盘输入 的内容追加到文件1 的末尾。
   补充:-v表示特殊符号。   cat -vE danny.c    
-------------------------------------------------------
  下午
一、文件操作命令
  1. touch创建文件(重)
  格式: touch 文件名  
  注意:如果文件不存在 则创建文件  如果文件存在 则更新最后的修改时间
  2. mv 移动 或者重命名(重)
   格式1: mv 文件1  文件2       把第一个文件复制到第二个文件中,然后删除第一个文件
    格式2: mv 目录1  目录2     如果目录2存在,把目录1移动到目录2中
    格式3:  mv 文件1  目录1   把文件1移动到目录1中,如果目录2不存在,则把目录1的名字修改成目录2.
    选项:  -i  询问模式,提示是否覆盖      -v  提示移动的步骤       -b 备份覆盖文件
    练习: 先创建两个文件 danny1 和danny2  在第一个文件中输入1234,在第二个文件中输入abcd  然后把第一个文件中内容追加到第二个文件中。

  3  rm 删除文件(重)
    格式: rm 文件    ;  删除文件
    格式: rm -rf 目录名;  删除指定目录,可以多级删除。
    选项: -r 删除目录  -f 强制删除    -i 提示是否删除
    练习: 把当前目录下所有以a开头,第二个字母不是abc的.c文件删除 rm a[^abc]*.c
  
  4.cmp 比较两个文件是否相同(重)
    格式: cmp 文件1  文件2
    如果文件1和文件2相同则无任何打印,如果文件1和文件2不相同则打印第一处不相同的字符位置。

  5.cp 文件拷贝(重)
    格式: cp 文件1 文件2 ; 如果文件2不存在则新建后复制,如果文件2存在则覆盖粘贴。
    格式: cp 文件1  目录1; 把etc目录下的 第三个字母不是abc的conf文件拷贝到主目录的day01中
    格式: cp -r 目录1  目录2;   递归复制目录  
    参数: -i  询问   -f强制   -r 递归复制

  6.cut 按照某一个要求查看文档(重)
    格式: cut -d ‘分隔符’ -f 目标列 文件名
    例子: 把passwd文件中所有的用户名打印出来。
   练习: 把所有用户的主目录名称存入danny1的后面。

  7.more:分屏查看文件(较大文件查看)(重)
    格式: more 目标文件 
    格式: more  +n 目标文件  ;从第n行开始查看
    格式: more -n 目标文件  ; 每一页是n行显示
    注意:用空格翻页,或者使用ctrl+f  ctrl+b .用回车键查看下一行
 
8.less  分屏查看文件
    格式: less  目标文件
    参数: -p  查找关键字,从第一个找到的位置打印
              -M 查看百分比  ,例如less -M ./danny
    练习: 查找passwd文件中是否有student关键字
  
9.head 查看文件头部内容
  格式: head 文件名    ;默认显示文件的前10行
  格式    head -n 5 文件名 ; 显示文件的前5行
  格式: head -n -5 文件名; 除最后5行外其他全部显示
  格式: head -c 5 文件名; 除最后5个字符外其他都显示

 10.tail 查看文件尾
     格式:  tail 目标文件    ;默认显示后10行内容
     格式: tail -n 5 目标文件; 显示最后5行

 11.file 
    格式: file 目标文件
    作用:查看文件类型 (目录文件,设备文件。普通文件)
              student@student-machine:~$ file /dev/tty0
             /dev/tty0: character special (4/0)

  12.alias 给命令取别名
      格式: alias 别名='命令'
      注意:别名就表示命令,下次直接使用别名就行。
      取消: unalias  别名;   取消别名

  13.chmod 修改文件权限 (重)
      格式: chmod 绝对值权限 文件名
                 chmod 665 danny1   
       格式: chmod  u+x danny1   对拥有者加上可执行权限
                 chmod a+x danny1  所有人加上可执行权限
                 chmod o-x,a+r danny1;其他用户取消可执行权限,所有用户加上读权限。
                   chmod o-x,a+r danny1 danny2  两个文件同时修改
      例子: 请创建一个文件danny1,把拥有者的写权限去掉,组加上可执行权限 chmod u-w,g+x danny1
   u:表示拥有者 g:表示同组   o:表示其他   a:表示所有

   14.chown 修改文件属组和属主 (重)
    格式: chown 新的属主 文件名   ;修改文件的属主
    格式: chown 新的属主:新的属组 目标文件    ;  修改文件的属主和属组       
    格式: chown 新的属组:  目标文件;  修改属主,同时把属组修改成当前属主的默认属组。
   案例:在student用户下:文件属性如下
             -r-xrwxr-x 1 danny   student   19 7月   5 16:43 danny1
              student权限 rwx
            如果切换到abc用户后,请问当前用户对danny1的权限是r-x
           
   
 


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值