manual.go 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. package main
  2. import (
  3. "io"
  4. "strings"
  5. )
  6. func manual() io.Reader {
  7. return strings.NewReader(`bg :后台执行job
  8. - bg [%JID]... :使指定编号的job在后台继续执行
  9. - bg :使编号最小的job在后台继续执行
  10. [前台执行的进程 :在shell中执行的进程;在进程结束并返回shell之前,shell不能执行其他命令]
  11. [后台执行的进程 :shell的子进程,隐式执行;在进程结束并返回shell之前,shell可以执行其他命令]
  12. cd :修改工作目录
  13. - cd DIRECTORY :将工作目录修改为DIRECTORY
  14. - cd .. :返回上一层目录
  15. - cd :将工作目录修改为主目录
  16. - cd ~ :将工作目录修改为主目录
  17. clr :清屏
  18. - clr :清屏并在屏幕第一行显示命令提示符
  19. dir :显示目录内容
  20. - dir :显示工作目录(即当前目录)下的所有文件
  21. - dir DIRECTORY :显示DIRECTORY下的所有文件
  22. echo :显示内容并换行
  23. - echo COMMENT :在屏幕上显示COMMENT并换行
  24. env :显示用户环境变量
  25. - env :显示所有用户环境变量
  26. [环境变量 :指定操作系统运行环境的一些参数,保证shell命令的正确执行]
  27. [用户环境变量 :与shell无关的环境变量,不同的shell拥有相同的用户环境变量]
  28. exec :执行命令
  29. - exec COMMAND :执行COMMAND命令
  30. exit :退出shell
  31. - exit :退出当前shell,退出状态为0
  32. - exit CODE :退出当前shell,退出状态为CODE
  33. fg :前台执行job
  34. - fg [%JID]... :使指定编号的job在前台继续执行
  35. - fg :使编号最小的job在前台继续执行
  36. help :显示用户手册
  37. - help :显示用户手册,并用more过滤
  38. - help -N :显示用户手册,并用more过滤,每页显示N行
  39. - help +N :显示用户手册,并用more过滤,从第N行开始显示
  40. jobs :显示job列表
  41. - jobs :显示所有job的列表
  42. - jobs [%JID]... :显示指定编号的job的列表
  43. pwd :显示工作目录
  44. - pwd :显示工作目录绝对路径
  45. set :显示所有环境变量或设置参数
  46. - set :显示所有环境变量(包括用户环境变量和shell环境变量)
  47. - set [STR]... :设置命令行参数为指定列表
  48. [shell环境变量 :与shell有关的环境变量,不同的shell拥有不同的shell环境变量]
  49. [同一种shell的不同进程也拥有不同的shell环境变量]
  50. shift :左移参数
  51. - shift :将命令行参数左移1位
  52. - shift [NUM] :将命令行参数左移NUM位
  53. test :测试条件
  54. - test -d FILE :测试FILE是否为目录文件
  55. - test -f FILE :测试FILE是否为普通文件
  56. - test -s FILE :测试FILE大小是否不为0
  57. - test -r FILE :测试FILE是否可读
  58. - test -w FILE :测试FILE是否可写
  59. - test -x FILE :测试FILE是否可执行
  60. - test NUM1 -eq NUM2 :测试NUM1是否等于NUM2
  61. - test NUM1 -ge NUM2 :测试NUM1是否大于等于NUM2
  62. - test NUM1 -gt NUM2 :测试NUM1是否大于NUM2
  63. - test NUM1 -le NUM2 :测试NUM1是否小于等于NUM2
  64. - test NUM1 -lt NUM2 :测试NUM1是否小于NUM2
  65. - test NUM1 -ne NUM2 :测试NUM1是否不等于NUM2
  66. - test NUM1 == NUM2 :测试NUM1是否等于NUM2
  67. - test NUM1 != NUM2 :测试NUM1是否不等于NUM2
  68. time :显示时间
  69. - time :显示当前时间
  70. umask :显示或设置umask
  71. - umask :显示当前umask
  72. - umask OCT :设置umask为OCT
  73. [umask :用于设置用户创建文件和目录的默认权限;umask用3位8进制数表示,分别为所有者、所在组、其他的权限,每1位8进制表示3位2进制,分别为读、写、执行权限]
  74. [目录文件创建时的默认权限为0777&~umask,即umask中为1的位在默认权限中为0;例如umask=0022时,目录文件的默认权限为0755]
  75. [普通文件创建时的默认权限为0666&~umask;例如umask=0022时,普通文件的默认权限为0644]
  76. unset :重设变量
  77. - unset [VAR]... :重设指定的环境变量,值变为空
  78. [I/O重定向 :在命令中使用< FILE可以将FILE文件作为命令的标准输入]
  79. [在命令中使用> FILE可以将FILE文件作为命令的标准输出,如果FILE文件已存在则会覆盖写入]
  80. [在命令中使用>> FILE可以将FILE文件作为命令的标准输出,如果FILE文件已存在则会追加写入]
  81. [在命令中使用2> FILE可以将FILE文件作为命令的标准错误输出,如果FILE文件已存在则会覆盖写入]
  82. [在命令中使用2>> FILE可以将FILE文件作为命令的标准错误输出,如果FILE文件已存在则会覆盖写入]
  83. [管道 :执行命令COMMAND1 | COMMAND2 | ... | COMMANDN,可以依次将前一个命令的标准输出作为下一个命令的标准输入]
  84. [第一个命令的标准输入和最后一个命令的标准输出为默认值]
  85. `)
  86. }