Linux学习笔记

 一.Date功能

  1.显示完整时间:#date

   只显示时间:  #date +%T

   只显示日期:  #date +%F 或者 #date +%D

   只显示小时:  #date +%H 或者# date +%k

   只显示年份:  #date +%Y

   只显示分钟:  #date +%M

   只显示秒钟:  #date +%S

   查看硬件时间:#hwclock

2.修改时间:

 只修改时间:      #date –s Hour:minute:second

修改日期和时间:  #date –s “ Year-month-date  Hour:minute:second ”

   只修改日期:      #date –s “Year-month-date  `date +%T` ”

.文件和目录管理相关命令

   1.创建一个空白文件:touch  filename

   Shell的命令行展开:

   /tmp/{a,b}   就等于 /tmp/a /tmp/b

/tmp/{a,b}/c  就等于 /tmp/a/c  tmp/b/c

   touch 也可以批量创建文件:

#touch a_b a_c d_b d_c 相当于 # touch {a,d}_{b,c}

   2.复制文件:

   cp sourcefile  destinationfile 或者 cp srcfile…. Dest

       -f  表示强行复制,不提示信息

       -i  表示复制时提示

       -p  复制文件时保留原有的权限模型 ,使用时注意:在管理员模式下可以保留其他用户创建时的权限,但是在其他用户模式下不能保留管理员创建文件时的文件权限。

   例如:cp /root/a  /tmp/abc

 此时要分两种情况:

1abc是文件的情况下

如果/tmp 目录下原先没有abc ,那么直接将a 文件复制到/tmp 目录下,并命名为abc;如果/tmp目录下原先已经有abc文件,那么会将原abc文件覆盖,名字不变。

   2abc是目录的情况下

    如果abc /tmp目录下的一个目录,那么,会将a文件直接复制到abc目录之下,如果a也是一个目录,也会将a目录拷贝到abc目录之下,但是要使用参数

    cp /root/a  –r/R  /tmp/abc

    注意:如果复制文件时,源文件是多个,那么目标一定是个目录。

    3.创建一个目录:

mkdir  dirname

      -p(parents)  可以创建不存在的目录 ,例如: mkdir -p /tmp/m/n/t , 如果mn目录不存在,也会创建成功,它会先创建mn ,再创建 t

      -v  创建目录时候显示详细信息

4.删除目录或文件:rm  rmdir

  rmdir :用于删除一个空目录

  rm 文件删除命令

  rm  file… 一次也可以删除多个文件

      -v 选项      删除时显示详细信息

      -i  选项     删除时显示提示信息

      -f           强制删除,不提示信息

      -r/R         递归删除,并且一直有删除提示信息

      -rf          直接删除,不提示任何信息,

 5.移动文件或目录

  mv  sourcefile  destionfile

  mv  srcfile…  dest

  例如: mv  /root/a  /tmp/abc

  也分为两种情况:

(1). abc是一个文件

  如果abc原先不存在,将文件a移动到/tmp目录之下,重命名为abc ,如果abc原先存在,移动后a文件将覆盖原来的abc,并重命名为abc

  (2) .abc 是一个目录

   如果a也为一个目录,并且abc目录存在,那么会将目录a 移动到abc目录之下, 如果abc目录不存在,那么会将a目录移动到/tmp目录之下并重命名为abc     

   注:如果源多个文件,那么目标只能为一个目录。

  6.如何查看文本文件、分页显示文件内容、指定显示文件内容

   1cat  [option] [file] ...    tac 是逆序显示文件内容)

       -n  对显示的内容加上行号

       -E  显示文件的结尾

       -v  显示非打印字符,不显示制表符

       -T  显示制表符

    注:cat 不能分页显示文件内容,

2)分页显示文件内容可以使用more less 命令

     more 显示的内容只能向下翻屏,不能向上,而less 显示的内容既可以向下翻,又能用B键向上翻屏

      more/less  /etc/inittab

   3head/tail    可以显示指定文件的首部和尾部#行,默认情况下显示文件的首10行,或者尾10

     例如:head -#  file 显示文件内容的首#

           tail -#  file  显示文件内容的尾#

     7.统计文件字符内容命令

      wc wordcount

      wc  [options]  file

           -l   统计文件行数

           -w  统计文件单词数

           -c   统计字节数

     8.剪切显示文件内容命令

      cut   [OPTION]... [FILE]...

           -d 指定分隔符 ,后跟具体的分隔符,例如 –d -d/

           -f 指定字段 1-6个字段,例如 –f1 -f2 ……

     9.排序显示文件内容命令:(不比较数值),区分大小写,默认为升序排序

         sort  [OPTION]... [FILE]...

              -r  逆序排序(不对文件本身内容改变,仅仅是将排序内容显示至屏幕上)   -n  以数值大小比较进行排序

              -f  不区分大小写排序显示

              -u  不显示重复的行

     10.比较文件中行是否相同命令

      uniq  [OPTION]... [INPUT [OUTPUT]]

           -u  只显示唯一出现那次的行

           -d  只显示重复过的行

           -c  统计,显示每行重复的次数

      注:uniq命令要和sort 命令联合使用才可以例如sort  /etc/inittab | uniq –c

     11.在文本中转换、删除字符命令:

        tr [OPTION]... SET1 [SET2]

             -d 删除字符

        例如:tr  -d  ‘aA’  <  FILE  意思是删除a或者A字母(只是将修改过后的结果输入重定向到屏幕,原文件内容不会改变)

        例如:tr  ‘abc’ ‘ABC’ <  FILE  ABC 替换FILE中的 abc  

三.命令替换: 把一个命令的执行结果当作另一个命令的输入信息来实现,就叫做命令替换。

   例如:创建一个以当前时间为文件名后缀命名的文件,形如,myfile-17-24-35.txt

# touch myfile-$(date  +%H-%M-%S).txt  即可以实现

Linux用户管理

    1Linux中有三种用户管理员系统用户普通用户

     添加用户:

 #useradd  username  或者 adduser  username

 为用户加密码:

 Passwd  username 此操作只能由root完成

 添加一个用户之后,会有三个系统文件发生变化:

 /etc/passwd    /etc/shadow    /etc/group 

 格式 : useradd  [options]

               -u     指定UID

                -g    指定GID  (使用-g选项指定gid 时,这个组必须是已存在的。)

                -c   增加注释信息  如: -c  " Welcome ......  "      

                    -d   指定家目录路径

                    -s    指定shell 目录

                    -G    为用户指定附加组(可以有多个 

                    -r    username 添加此用户为系统用户

2.passwd 命令: 修改账户的登陆密码,使用权限是所有用户

 Passwd  [option]  username

           -l      锁定用户账号

           -u     解除用户账号的锁定状态

           -n #    指定密码最短使用期限

           -x #    指定密码最长使用天数

                 -w#    指定密码过期前的警告期限

                 -i #     指定密码过期的宽限时间

      3.id 命令:查看用户ID信息

             id  [OPTION]... [USERNAME]

        # id   显示用户id 的详细信息

             -u  显示用户ID

             -g  显示用户实际的组ID

             -G  显示用户所有的组ID,包括附加组

      4.usermod命令 ,修改用户属性

       usermod [options]  LOGIN(账户名称)

               -u       修改用户UID

               -g       修改用户GID

               -a  -G   追加一个组的附加组                

                   -c        修改注释信息

                   -d        修改家目录( -m -d修改后家目录中文件不丢失)

                   -s        修改shell目录

                   -l        修改用户名

          5.userdel  groupadd  groupmod  gpasswd 命令

           userdel  username 删除用户

                  -r  username  递归删除,可以删除用户家目录

           groupadd groupname  增加组

                     -g  gid  groupname  为增加的组指定组ID

                     -r   groupname       添加此组为系统组

           groupmod  修改组信息

              -g   修改组ID

              -n   修改组名  形如:groupmod –n newgroupname  oldgroupname

           gpasswd 为组增加密码

                   gpasswd  groupname

 

你可能感兴趣的:(linux,职场,休闲)