热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux.系统逻辑语句非,linux学习笔记之shell

8种机械键盘轴体对比本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?环境变量变量名称作用HOME用户的主目录SHELL用户在使用的

66b52468c121889b900d4956032f1009.png

8种机械键盘轴体对比

本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?

环境变量变量名称作用HOME用户的主目录

SHELL用户在使用的Shell解释器名称

PATH定义解释器搜索用户执行命令的路径

EDITOR用户默认的文本编辑器

RANDOM生成一个随机数字

LANG系统语言、语系名称

执行命令

绝对路径/user/local/example.sh

相对路径./example.sh

bash shell脚本bash example.sh

使用绝对路径和相对路径之前,该文件必须有可执行的权限

接收参数示例example.sh param1 param2 param3

$1 第一个参数

$2 第二个参数

$0 当前脚本名称

$# 参数个数

$* 所有参数

判断文件测试语句

逻辑测试语句

整数值比较语句

字符串比较语句

文件测试

文件测试即使用指定条件来判断文件是否存在或权限是否满足等情况的运算符操作符作用-d测试文件是否为目录类型

-e测试文件是否存在

-f判断是否为一般文件

-r测试当前用户是否有权限读取

-w测试当前用户是否有权限写入

-x测试当前用户是否有权限执行

$?变量显示上一条命令执行后的返回值。如果返回值为0,则目录存在;如果返回值为非零的值,则意味着目录不存在[ -d /etc/fstab ]

$?

逻辑测试

逻辑语句用于对测试结果进行逻辑分析,根据测试结果可实现不同的效果。

在Shell终端中逻辑“与”的运算符号是&&,它表示当前面的命令执行成功后才会执行它后面的命令,因此可以用来判断/dev/cdrom文件是否存在,若存在则输出Exist字样。[ -e /dev/cdrom ] && echo "Exist"

Exist

除了逻辑“与”外,还有逻辑“或”,它在Linux系统中的运算符号为||,表示当前面的命令执行失败后才会执行它后面的命令

第三种逻辑语句是“非”,在Linux系统中的运算符号是一个叹号(!),它表示把条件测试中的判断结果取相反值。也就是说,如果原本测试的结果是正确的,则将其变成错误的;原本测试错误的结果则将其变成正确的。

整数比较符操作符作用-eq是否等于

-ne是否不等于

-gt是否大于

-lt是否小于

-le是否等于或小于

-ge是否大于或等于[ 10 -gt 10 ]

echo $?

1

示例2

使用整数运算符来判断内存可用量的值是否小于1024,若小于则会提示“Insufficient Memory”(内存不足)的字样

FreeMem=`free -m | grep Mem: | awk '{print $4}'`

[ $FreeMem -lt 1024 ] && echo "Insufficient Memory"

字符串比较操作符作用=比较字符串内容是否相同

!=比较字符串内容是否不同

-z判断字符串内容是否为空通过判断String变量是否为空值,进而判断是否定义了这个变量:

[ -z $String ]

echo $?

0

条件语句

ifif 条件

then 命令

fi

if 条件

then 命令

else 命令2

fi

if 条件

then 命令

elif 条件2

then 命令2

else 条件3

命令3

fi

for infor 变量名 in 列表

do

命令

done

whilewhile 条件

do

命令

done

case incase 变量值 in

值)

命令

;;

*)

默认命令

esac

计划任务

一次性计划任务at 时间 创建计划

at -l 查看未执行的计划任务

atrm 任务序号 删除计划任务

长期性计划任务在crond服务的计划任务参数中,所有命令一定要用绝对路径的方式来写,如果不知道绝对路径,请用whereis命令进行查询

crontab -e 创建或者编辑

crontab -l 查看计划任务

crontab -r 删除计划任务



推荐阅读
  • Java程序员必会的40个Linux命令!
    你知道的越多,不知道的就越多,业余的像一棵小草!你来,我们一起精进!你不来,我和你的竞争对手一起 ... [详细]
  • 动手写一个OpenVPN的wrapper来优化OpenVPN性能
    动手写一个OpenVPN的wrapper来优化OpenVPN性能 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • 面试经验分享:华为面试四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试
    最近有朋友去华为面试,面试经历包括四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试。80%的人都在第一轮电话面试中失败,因为缺乏基础知识。面试问题涉及 ... [详细]
  • top命令使用方法及解读
    本文介绍了top命令的使用方法和解读,包括查看进程信息、系统负载、内存状态、CPU占用等内容。通过top命令可以持续观察系统上运行的进程,并了解系统负载情况,及时关闭一些进程以减轻系统负担。同时,还介绍了top命令的快捷键和安全模式启动方法。通过本文的学习,读者可以更好地使用top命令来管理系统进程。 ... [详细]
  • 本文详细介绍了在Linux虚拟化部署中进行VLAN配置的方法。首先要确认Linux系统内核是否已经支持VLAN功能,然后配置物理网卡、子网卡和虚拟VLAN网卡的关系。接着介绍了在Linux配置VLAN Trunk的步骤,包括将物理网卡添加到VLAN、检查添加的VLAN虚拟网卡信息以及重启网络服务等。最后,通过验证连通性来确认配置是否成功。 ... [详细]
  • Linux学习笔记:psef、ps aux、kill9
    一、查看进程命令1.ps命令Linux中的ps命令是ProcessStatus的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就 ... [详细]
  • 转载请注明出处:http:blog.csdn.netl1028386804articledetails78666356直接上代码:#!binsh##j ... [详细]
  • 1.判断磁盘使用空间df-h|grep-vFile|seds%g|awk{if($580)print使用空间超过了80%:,$6}或#!binbash#Filename:di ... [详细]
  • #!binbashusrlocalmysqlbinmysqldump#保存备份个数number2#备份保存路径backup_dirrootmysqlbackup#日期dddate% ... [详细]
  • http:blog.sina.com.cnsblog_491529d60100061h.html安装完SLED10后发现仍然有“热启动网络不通”的问题,原因是内核版本 ... [详细]
  • 关于中间件服务的配置管理,分为5个阶段
    这是学习笔记的第 2185 篇文章读完需要9分钟速读仅需7分钟一直以来对于中间件服务的配置管理是一个有些头疼的事情,但是头疼还不意味着解决不了,目前现状是:中间件配置的管理是手工方 ... [详细]
  • 昨夜西风凋碧树,独上高楼,望尽天涯路。——五代晏殊蝶恋花最近学习了APUE的一系列函数,要求用ifconfig命令来获取本机的网卡ip&# ... [详细]
author-avatar
ririye2011
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有