LINUX基础学习之基础命令(3)--2019-11-22

1.命令行展开

    ~ USERNAME:展开用户的主目录

      [root@CentOS-7-43 ~]# ls ~roo

      公共 模板 视频 图片 文档 下载 音乐 桌面

  {}:可承载一个以逗号分隔的列表,并将其展开为多个路径

         例如:/tmp/{a,b}  ==  /tmp/a,/tmp/b

     [root@CentOS-7-43 ~]# ls /home/{Rom,roo}

     /home/Rom:

     /home/roo:
     公共 模板 视频 图片 文档 下载 音乐 桌面

  $?:bash使用特殊变量保存最近一条命令的执行状态

        0:表示成功

     1-255:表示失败

        [root@CentOS-7-43 ~]# echo $?

        0

2.mkdir : 创建目录

  用法:mkdir [选项] 目录...

  常用参数:

      -m mode, --mode=mode :为新建立的目录设定模式,就象应用命令chmod一样,以后仍 然使用缺省模式建立新目录。

      -p, --parents:目录存在不报错,且自动创建所需的各级目录

      -v:显示过程

  rmdir:删除空目录  

      -p:递归删除父空目录

      -v:显示过程

3.tree :list contents of directories in a tree-like format

  常用参数:

      -d:只显示目录

      -L level:指定显示的层级数目

      -P pattern:显示由指定pattern匹配到的路径

      [root@CentOS-7-43 ~]# tree -P "*.cfg" -L 1 /root
      /root
      ├── anaconda-ks.cfg
      ├── initial-setup-ks.cfg
      ├── redis-5.0.3
      └── \344\270\213\350\275\275

      2 directories, 2 files

4.touch:文件的时间戳管理

  touch [-acm][-r ref_file(参照文件)|-t time(时间值)] file(文件名)...

  常用参数:

      -a :仅改变atime和ctime

      -m:仅改变mtime和ctime

      -t:指定atime和ttime的时间戳  [[CC]YY]MMDDhhmm[.ss]

      -c:如果文件不存在,则不创建  

      注:atime :access time  访问时间   mtime: modify time 修改时间   ctime :change time 修改时间

      [root@CentOS-7-43 ~]# ll /data/1.txt
      -rw-r--r--. 1 root root 615 4月 3 2019 /data/1.txt
      [root@CentOS-7-43 ~]# touch /data/1.txt
      [root@CentOS-7-43 ~]# ll /data/1.txt
      -rw-r--r--. 1 root root 615 11月 22 13:48 /data/1.txt

  stat 命令(display file or file system status) : 显示文件或文件系统状态 显示内容包括:文件路径、文件大小、文件占用block、每个IO block大小 文件类型、文件所在设备的主/次设备号 文件的inode、文件被硬链接次数 文件权限、文件的属主UID、文件的属组GID 环境(SELinux)

    stat [OPTION]... FILE...
5.文件文件查看

  more 分页查看文件

    格式: more [option...] FILE...

      -d:显示翻页及退出提示

  less 一页一页地查看文件或STDIN输出

     格式:less [option...] FILE...

  cat 连接文件并在标准输出上输出

    -E, --show-ends:在每行结束显示 $

    -b, --number-nonblank:给非空输出行编号

    -n, --number:给所有输出行编号

    -T 显示制表符

  tac tac - 反转显示文件

  head 输出文件的开始部分

    格式:head [OPTION]... [FILE]...

      -c, --bytes=SIZE:打印起始的SIZE字节

      -n, --lines=NUMBER:显示起始的NUMBER行,而非默认的起始10行

      -#:指定获取前#行

  tail 输出文件的末尾部分

   格式:tail [OPTION]... [FILE]...

    -c, --bytes=N:输出最后N个字节

    -n, --lines=N :输出最后N行,而非默认的最后10行

6.pwd 显示当前工作路径

  [root@CentOS-7-43 ~]# pwd
  /root

7.shell

  显示当前使用的shell:echo $shell

  查看当前的终端设备:tty

  显示当前系统使用的所有shell:cat /etc/shells

   区别内部或者外部命令:type + 命令

    内建命令:由Shell自带的,而且通过某命令形式提供

    外建命令:在当前系统的某文件系统路径下有对应的可执行程序文件

    [root@CentOS-7-43 ~]# type who
    who 是 /usr/bin/who
    [root@CentOS-7-43 ~]# type cd
    cd 是 shell 内嵌

    [root@CentOS-7-43 ~]# type cat  

    cat 已被哈希 (/usr/bin/cat)

8.date命令 打印或设置系统日期和时间

  格式:date [选项]... [+格式]

     date [选项] [MMDDhhmm[[CC]YY][.ss]]

  %%    一个文字的 %
  %a    当前locale 的星期名缩写(例如: 日,代表星期日)
  %A    当前locale 的星期名全称 (如:星期日)
  %b    当前locale 的月名缩写 (如:一,代表一月)
  %B    当前locale 的月名全称 (如:一月)
  %c    当前locale 的日期和时间 (如:2005年3月3日 星期四 23:05:25)
  %C    世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:20)
  %d    按月计的日期(例如:01)
  %D    按月计的日期;等于%m/%d/%y
  %e    按月计的日期,添加空格,等于%_d
  %F    完整日期格式,等价于 %Y-%m-%d
  %g    ISO-8601 格式年份的最后两位 (参见%G)
  %G    ISO-8601 格式年份 (参见%V),一般只和 %V 结合使用
  %h    等于%b
  %H    小时(00-23)
  %I    小时(00-12)
  %j    按年计的日期(001-366)
  %k   hour, space padded ( 0..23); same as %_H
  %l   hour, space padded ( 1..12); same as %_I
  %m   month (01..12)
  %M   minute (00..59)
  %n    换行
  %N    纳秒(000000000-999999999)
  %p    当前locale 下的"上午"或者"下午",未知时输出为空
  %P    与%p 类似,但是输出小写字母
  %r    当前locale 下的 12 小时时钟时间 (如:11:11:04 下午)
  %R    24 小时时间的时和分,等价于 %H:%M
  %s    自UTC 时间 1970-01-01 00:00:00 以来所经过的秒数
  %S    秒(00-60)
  %t    输出制表符 Tab
  %T    时间,等于%H:%M:%S
  %u    星期,1 代表星期一
  %U    一年中的第几周,以周日为每星期第一天(00-53)
  %V    ISO-8601 格式规范下的一年中第几周,以周一为每星期第一天(01-53)
  %w    一星期中的第几日(0-6),0 代表周一
  %W    一年中的第几周,以周一为每星期第一天(00-53)
  %x    当前locale 下的日期描述 (如:12/31/99)
  %X    当前locale 下的时间描述 (如:23:13:48)
  %y    年份最后两位数位 (00-99)
  %Y    年份
  %z +hhmm        数字时区(例如,-0400)
  %:z +hh:mm        数字时区(例如,-04:00)
  %::z +hh:mm:ss    数字时区(例如,-04:00:00)
  %:::z            数字时区带有必要的精度 (例如,-04,+05:30)
  %Z            按字母表排序的时区缩写 (例如,EDT)

  上述格式不必全都记住,只需要掌握几个常用的即可。例如%Y表示年,%m表示月,%d表示日,%H表示小时,%M表示分钟,%S表示秒,%s表示从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数,相当于time函数,%w表示一周中的第几天。

 实例: 

[root@CentOS-7-43 ~]# date "+现在时间是:%Y-%m-%d %H:%m:%S"
现在时间是:2019-11-22 14:11:46  

如果要显示的时间不是当前时间,而是经过运算的时间,可以用-d选项。例如一年前的时间:

 
 

[root@CentOS-7-43 ~]# date "+回到1年前:%Y-%m-%d %H:%m:%S" -d "-1 year"
回到1年前:2018-11-22 14:11:12

显示十天后的时间:

[root@CentOS-7-43 ~]# date "+%Y-%m-%d %H:%m:%S" -d "+10 day"
2019-12-02 14:12:09

有时候需要获取当前时间距离1970年0时0分0秒所经历的秒数,保存在变量中:

[root@CentOS-7-43 ~]# ttime=`date "+%s"`
[root@CentOS-7-43 ~]# echo $ttime
1574405251

用 -s选项可以设置系统时间:date -s "20191122 14:53:53"

hwclock 同步系统时间和硬件时钟

  -s  以硬件时间为准

  -w 以系统时间为准 

cal 显示当前月日历

  

猜你喜欢

转载自www.cnblogs.com/qhpnihao/p/11911601.html