命令类型:

  1. type //显示指定命令属于哪种类型
  2. [root@Gin ~]# type hostnamectl //hostnamectl是外部命令显示
  3. hostnamectl is /usr/bin/hostnamectl
  4. [root@Gin ~]# type cd //cdshell内部命令显示
  5. cd is a shell builtin

基础命令:

目录管理:

  1. //目录管理
  2. ls //列出目录内容
  3. [root@Gin ~]# ls //列出当前目录下的内容
  4. a anaconda-ks.cfg Gin
  5. -l //长格式
  6. [root@Gin ~]# ls -l //用-l显示出更多信息(长格式)
  7. total 8
  8. drwxr-xr-x. 5 root root 33 Jun 29 14:40 a
  9. -rw-------. 2 root root 1478 Jun 28 16:37 anaconda-ks.cfg
  10. -rw-------. 2 root root 1478 Jun 28 16:37 Gin
  11. 文件类型
  12. - //普通文件(f
  13. d //目录文件
  14. b //块设备文件(block
  15. c //字符设备文件(character
  16. l //符号链接文件(symbolic link file
  17. p //命令管道(pipe
  18. s //套接字文件(socket
  19. 文件权限 //9位,每3位一组,每一组:rwx(读,写,执行)
  20. 文件硬链接的次数
  21. 文件的属主(owner
  22. 文件的属组(group
  23. 文件大小(size),单位是字节
  24. 时间戳(timestamp),最近一次被修改的时间
  25. 访问 //access
  26. 修改 //modify,文件内容发生改变
  27. 改变 //changemetadata(元数据)
  28. -h //做单位转换
  29. [root@Gin ~]# ls -lh anaconda-ks.cfg //显示文件大小用对人类友好的方式
  30. -rw-------. 2 root root 1.5K Jun 28 16:37 anaconda-ks.cfg
  31. -a //显示以.开头的隐藏文件
  32. [root@Gin ~]# ls -a //显示当前目录下的隐藏文件
  33. . a .bash_history .bash_profile .cshrc .tcshrc
  34. .. anaconda-ks.cfg .bash_logout .bashrc Gin .viminfo
  35. . //表示当前目录
  36. .. //表示父目录
  37. -d //显示目录自身属性
  38. -i //显示文件的inodeindex node
  39. -r //逆序显示
  40. -R //递归(recursive)显示
  41. cd //改变当前工作目录
  42. [root@Gin ~]# cd /etc/sysconfig/network-scripts/ //进入到network-scripts目录中
  43. [root@Gin network-scripts]#
  44. pwd //打印当前工作目录路径
  45. [root@Gin network-scripts]# pwd //打印出当前在那个目录中
  46. /etc/sysconfig/network-scripts
  47. mkdir //创建目录
  48. -p //创建目录时若父目录不存在则自动创建
  49. -v //显示目录创建过程
  50. [root@Gin ~]# mkdir -pv gin/Kin/555 //创建gin目录下的Kin目录下的555显示过程
  51. mkdir: created directory 'gin'
  52. mkdir: created directory 'gin/Kin'
  53. mkdir: created directory 'gin/Kin/555'
  54. rmdir //删除目录,只能删除空目录
  55. [root@Gin ~]# rmdir gin //删除有文件的目录
  56. rmdir: failed to remove 'gin': Directory not empty
  57. [root@Gin ~]# rmdir 555 //删除空的目录
  58. [root@Gin ~]#
  59. tree //查看目录树
  60. [root@Gin ~]# tree a //查看目录a的目录树
  61. a
  62. ├── b
  63. ├── Gin
  64. └── kin
  65. ├── 1205
  66. └── 555
  67. ├── c
  68. └── d
  69. └── {999}
  70. 8 directories, 0 files

文件管理:

  1. //文件管理
  2. touch //无中生有、万象更新
  3. [root@Gin ~]# touch Kin //创建一个名为Kin的文件在当前目录
  4. [root@Gin ~]# ls
  5. a anaconda-ks.cfg Gin Kin
  6. stat //显示文件或文件系统的状态
  7. [root@Gin ~]# stat Gin //显示Gin文件的状态
  8. File: Gin
  9. Size: 1478 Blocks: 8 IO Block: 4096 regular file
  10. Device: fd00h/64768d Inode: 102019973 Links: 2
  11. Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
  12. Context: system_u:object_r:admin_home_t:s0
  13. Access: 2022-06-29 15:52:00.023714873 +0800
  14. Modify: 2022-06-28 16:37:59.277637569 +0800
  15. Change: 2022-06-29 15:54:07.100724757 +0800
  16. Birth: -
  17. rm //删除文件,删除命令默认会提示是否需要删除, \
  18. [root@Gin ~]# rm -r a //删除a目录
  19. rm: descend into directory 'a'? y
  20. rm: descend into directory 'a/b'? y
  21. rm: descend into directory 'a/b/kin'? y
  22. rm: remove directory 'a/b/kin/555'? y
  23. rm: remove directory 'a/b/kin/1205'? y
  24. rm: remove directory 'a/b/kin'? y
  25. rm: remove directory 'a/b/Gin'? y
  26. rm: remove directory 'a/b'? y
  27. rm: remove directory 'a/c'? y
  28. rm: descend into directory 'a/d'? y
  29. rm: remove directory 'a/d/{999}'? y
  30. rm: remove directory 'a/d'? y
  31. rm: remove directory 'a'? y
  32. [root@Gin ~]#
  33. //如果要使用命令本身可以在命令前加一个\,\rm,这样删除就不会有提示了
  34. -r //递归删除,删除目录时必须使用此选项
  35. -f //强制删除,不询问
  36. [root@Gin ~]# rm -rf gin //删除gin目录
  37. [root@Gin ~]#
  38. cp //复制文件,一个文件到一个文件,多个文件到一个目录
  39. -a //归档复制,常用于备份
  40. [root@Gin ~]# cp -a Rin /opt/ //使用归档复制将Rin复制到/opt目录下
  41. [root@Gin ~]# ls /opt/
  42. anaconda-ks.cfg kin Kin Rin
  43. -r //递归拷贝,拷贝目录时必须使用此选项
  44. [root@Gin ~]# cp -r a /opt/ //使用递归拷贝将a目录复制到/opt目录下
  45. [root@Gin ~]# ls /opt/
  46. a anaconda-ks.cfg kin Kin Rin
  47. -p //拷贝时保留原权限
  48. [root@Gin ~]# cp -p LL /opt/ //使用拷贝将LL文件复制到/opt目录下
  49. [root@Gin ~]# ls /opt/
  50. a anaconda-ks.cfg kin Kin LL Rin
  51. mv //移动文件
  52. [root@Gin ~]# mv Kin /opt/ //将Kin文件移动到/opt
  53. [root@Gin ~]# ls /opt/
  54. anaconda-ks.cfg kin Kin
  55. [root@Gin ~]# mv Gin Rin //将Gin改名成为Rin
  56. [root@Gin ~]# ls
  57. anaconda-ks.cfg Rin
  58. install //复制文件并且设置属性
  59. -m MODE
  60. -o OWNER
  61. -g GROUP
  62. [root@Gin ~]# install Gin -g admin /opt/ //将Gin复制到/opt目录下且改变他的组
  63. [root@Gin ~]# ls -l /opt/Gin
  64. -rwxr-xr-x. 1 root admin 1478 Jun 29 18:59 /opt/Gin