Linux指令学习

深碍√TFBOYSˉ_ 2022-12-06 04:27 214阅读 0赞

文章目录

      • RPM
      • YUM
      • SHELL
      • Crontab定时任务

RPM

常见指令:

  1. - rpm -qa grep xxx 查询是否安装了该软件包
  2. - rpm -qf /etc/xxx 查询这个目录属于哪个软件包
  3. - rpm -ql firefox:查询这个软件包安装了哪些文件
  4. - rpm -e firefox 卸载一个软件(如果有依赖会删除失败)
  5. - rpm -e --nodeps firefox:强制删除
  6. - rpm -ivh RPM包的全路径名称:安装一个RPM的包
  7. iinstall 安装
  8. vverbose 提示
  9. hhash 进度条
  10. i686i386表示32位系统,noarch表示通用

YUM

  1. 包管理器
  2. 能够从指定的服务器自动下载RPM包并安装,可以自动处理依赖关系
  1. 查看yum服务器是否有需要安装的软件

    1. yum list | grep xxx:会列出所有的安装包
  2. 安装指定的yum包

    1. yum install xxx

SHELL

  1. 位置参数变量
  2. $nn为数字,$0代表命令本身,$1-$9代表第一到第九个参数,十以上的参数,需要用大括号包含:${10}
  3. $*:代表命令行中所有参数,把所有参数看成一个整体
  4. $@:也代表所有参数,不过$@把每个参数区分对待
  5. $#:代表命令行中参数个数
  6. 预定义变量
  7. $$:获取当前进程号
  8. $!:获取后台运行的最后一个进程的进程号
  9. $?:返回最后一次执行的命令的返回状态,如果是0,表示正确执行
  10. ./myShell.sh & :命令后面加‘&’表示后台执行
  11. 运算符
  12. $((运算式)) $[运算式] (推荐使用)或 expr m + n
  13. 条件判断
  14. 基本语法:[ confition ] 注意condition前后要有空格
  15. 常用判断条件
  16. 1)两个整数的比较
  17. = 字符串比较
  18. -lt
  19. -le 小于等于
  20. -eq
  21. -gt
  22. -ge 大于等于
  23. -ne 不等于
  24. 2) 按照文件权限进行判断
  25. -r 有读的权限 [ -r 文件 ]
  26. -w 有写的权限
  27. -x 有执行的权限
  28. 3)按照文件类型进行判断
  29. -f 文件存在并且是一个常规的文件
  30. -e 文件存在
  31. -d 文件存在并是一个目录
  32. 例如:
  33. if [ 23 -gt 22 ]
  34. then
  35. echo "大于"
  36. fi
  37. if [ -f "/data/release/gdt/env_prod" ]
  38. then
  39. export ENV=prod
  40. fi
  41. 流程控制
  42. 1. if语句
  43. if [ condition ]
  44. then
  45. 程序
  46. elif [ condition ]
  47. then
  48. 程序
  49. fi
  50. 2. case 语句
  51. case $变量名 in
  52. "值1")
  53. 程序
  54. ;;
  55. "值2")
  56. 程序
  57. ;;
  58. *)
  59. 其他程序
  60. ;;
  61. esac
  62. 3. for循环
  63. 语法1:
  64. for 变量 in 1 2 3...:
  65. do
  66. 程序
  67. done
  68. 语法2:
  69. for ((初始值;循环控制条件;变量变化))
  70. do
  71. 程序
  72. done
  73. 例如:i 参数中
  74. for i in $@
  75. do
  76. echo "$i"
  77. done
  78. 1加到100:
  79. SUM=0
  80. for ((i=1;i<=100;i++))
  81. do
  82. SUM=$[$SUM + $i]
  83. done
  84. echo "$SUM"
  85. 4. while循环
  86. while [ 条件判断式 ]
  87. do
  88. 程序
  89. done
  90. 例如:1加到n,总共多少
  91. SUM=0
  92. i=0
  93. while [ i -le $1 ]
  94. do
  95. SUM = $[$SUM + $i]
  96. i = $[$i + 1]
  97. done
  98. echo "SUM=$SUM"
  99. read读取控制台输入
  100. read [选项] [变量]
  101. 选项:
  102. -p:指定读取值时的提示符;
  103. -t:指定读取值时等待的时间(秒),如果没有在指定的时间内输入,就不再等待了。。
  104. 变量:指定读取值的变量名
  105. 例如:
  106. 读取控制台输入一个 num 值,在 10 秒内输入。
  107. read -t 10 -p "请输入num的值:" NUM
  108. echo "NUM=$NUM"
  109. 函数
  110. shell 编程和其它编程语言一样,有系统函数,也可以自定义函数。系统函数中,我们这里就介绍两个。
  111. 1. 系统函数(只介绍两个basenamedirname
  112. basename 基本语法
  113. 功能:返回完整路径最后 / 的部分,常用于获取文件名
  114. basename [pathname] [suffix]
  115. 选项:
  116. suffix 为后缀,如果 suffix 被指定了,basename 会将 pathname string 中的 suffix 去掉。
  117. 例如:
  118. basename /home/gatesma/test.txt ---> test.txt
  119. basename /home/gatesma/test.txt .txt ---> test
  120. dirname 基本语法
  121. 功能:返回完整路径最后 / 的前面的部分,常用于返回路径部分
  122. dirname 文件绝对路径 (功能描述:从给定的包含绝对路径的文件名中去除文件名(非目录的部分),然后返回剩下的路径(目录的部分))
  123. 例如:
  124. dirname /home/gatesma/test.txt --> /home/gatesma
  125. 2. 自定义函数
  126. 基本语法
  127. [ function ] funname[()]
  128. {
  129. Action;
  130. [return int;]
  131. }
  132. 调用直接写函数名:funname [值]
  133. 例子
  134. 计算输入两个参数的和(read), getSum
  135. function getSum() {
  136. SUM=$[$1 + $2]
  137. echo "$SUM"
  138. }
  139. getSum $1 $2

Crontab定时任务

  1. crontab [选项]
  2. -l 查询任务
  3. -e 编辑任务
  4. -f 删除当前用户所有的crontab任务
  5. 【快速入门】
  6. */1 * * * * ls -l /etc > /tmp/to.txt
  7. * 取值范围内的所有数字
  8. / 每过多少个数字
  9. - XZ
  10. ,散列数字
  11. 实例1:每1分钟执行一次myCommand
  12. * * * * * myCommand
  13. 实例2:每小时的第3和第15分钟执行
  14. 3,15 * * * * myCommand
  15. 实例3:在上午8点到11点的第3和第15分钟执行
  16. 3,15 8-11 * * * myCommand
  17. 实例4:每隔两天的上午8点到11点的第3和第15分钟执行
  18. 3,15 8-11 */2 * * myCommand
  19. 实例5:每周一上午8点到11点的第3和第15分钟执行
  20. 3,15 8-11 * * 1 myCommand



































项目 含义 范围
第一个 一个小时当中的第几分钟 0-59
第二个 一天当中的第几小时 0-23
第三个 一月当中的第几天 1-31
第四个 一年当中的第几月 1-12
第五个* 一周当中的星期几 0-7(0和7都是星期日)

发表评论

表情:
评论列表 (有 0 条评论,214人围观)

还没有评论,来说两句吧...

相关阅读

    相关 linux指令学习方法

    linux总共有2000多个指令,我们不必每个都记住(反正以我的记忆力是记不住的),只需要记住几个关键的指令就行,然后靠man(q退出),,info,,Tab,,--help等

    相关 Linux指令学习--less命令

    less命令介绍 > less命令的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less命令允许用户向前或向后浏览文件,而more命令只能向前浏览。用l

    相关 Linux基本指令学习

    基本指令 一:ls 功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。 [1.ls][] \-a 列出目录下的所有文件,包括以.