shell一些技巧和知识点
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 shell一些技巧和知识点 ; 表示的是一个命令执行完, 忽略其返回值, 继续执行下一行 表示只有前面为true才继续执行后面的命令, 否则忽略, 可以理解为短路执行 || 表示子前面为false才继续执行后面
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入
shell一些技巧和知识点
; 表示的是一个命令执行完, 忽略其返回值, 继续执行下一行
&& 表示只有前面为true才继续执行后面的命令, 否则忽略, 可以理解为短路执行
|| 表示子前面为false才继续执行后面的命令, 这个比以前看到的解释更容易理解
凡是要输出字符串的, 最好用引号括起来, 否则容易被shell理解为命令, 这一点很容易疏忽
{}是一种命令块的写法
:可以看成append操作
export用来将一个变量升级为环境变量
str=
这行代码表示将str这个变量设置为null
${str:-+=expr} 这些操作忘记了, 还需要巩固一下
source会将script看成当前shell进程的一部分, 而不是生成一个sub shell进程来执行脚本, source用来加载公共的函数, 可以理解为import
exec用来结束当前shell进程, 并重新生成一个新的进程来执行脚本
()用来将多个命令放到一个sub shell进程中去执行, 可以理解为将表达式变成函数
{} 理解成匿名函数吧, 一般在awk中常见
$()和``是一回事, 不过前者辨识度更高, 建议常用, 后者容易与''混淆, 另外一个前者嵌套起来更简单, 不过前者移植性较差
${}除了用来界定变量之外, 还有一个功能实现字符串变量的substring操作, #表示去掉左边的, %表示去掉右边的, 单数表示最小匹配, 双数表示最大匹配, 可以通过键盘上#和%相对于$的位置来记忆, linux上的命令参数大部分记忆起来很伤脑筋:(
${}还可以用来设置默认值, 这块更复杂, 不记也罢
${#str}用来计算变量的字符长度
()的另一个作用是用来定义一个数组, 而针对数组的访问则利用的是[], 注意数组的下标base是0, 另外@用来表示全部, 可以理解为all
$(())只针对算数和逻辑运算, 里面的变量可以不用带上$前缀, 当然带上也不为错
shell中的0表示true, 非零表示false
(())用来直接进行运算, 会让我们的代码更简洁, 比如变量不用加$前缀
$0表示的是脚本路径, $1…n代表的是脚本路径之后的参数
函数可以理解为脚本中的脚本, 不过函数中$0表示的仍然是脚本路径, 而不是函数名
$10不是表示第十个参数而是第一个参数后面带一个0
一般#跟数量关系比较大, 比如${#str}表示变量长度, 而$#表示参数个数, 测试是否有传参数 [ $# = 0 ]

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

DeepSeek 是一款强大的智能搜索与分析工具,提供网页版和官网两种访问方式。网页版便捷高效,免安装即可使用;官网则提供全面产品信息、下载资源和支持服务。无论个人还是企业用户,都可以通过 DeepSeek 轻松获取和分析海量数据,提升工作效率、辅助决策和促进创新。

DeepSeek的安装方法有多种,包括:从源码编译(适用于经验丰富的开发者)使用预编译包(适用于Windows用户)使用Docker容器(最便捷,无需担心兼容性)无论选择哪种方法,请仔细阅读官方文档并充分准备,避免不必要的麻烦。

Linux终端中查看Python版本时遇到权限问题的解决方法当你在Linux终端中尝试查看Python的版本时,输入python...

BITGet 是一款加密货币交易所,提供各种交易服务,包括现货交易、合约交易和衍生品。该交易所成立于 2018 年,总部位于新加坡,致力于为用户提供安全可靠的交易平台。BITGet 提供多种交易对,包括 BTC/USDT、ETH/USDT 和 XRP/USDT。此外,该交易所还在安全性和流动性方面享有盛誉,并提供多种功能,如高级订单类型、杠杆交易和 24/7 全天候客户支持。

Gate.io是一款受欢迎的加密货币交易所,用户可通过下载其安装包并安装在设备上使用。获取安装包步骤如下:访问Gate.io官方网站,点击“下载”,选择对应操作系统(Windows、Mac或Linux),将安装包下载至计算机。安装过程中建议暂时禁用杀毒软件或防火墙,确保安装顺利。完成后,用户需创建Gate.io账户以开始使用。

欧易 OKX,全球领先的数字资产交易所,现推出官方安装包,提供安全便捷的交易体验。欧易 OKX 安装包无需通过浏览器访问,可直接在设备上安装独立应用程序,为用户打造稳定高效的交易平台。安装过程简便易懂,用户只需下载最新版本安装包,按照提示一步步操作即可完成安装。

如何在系统重启后自动设置unixsocket的权限每次系统重启后,我们都需要执行以下命令来修改unixsocket的权限:sudo...

欧易,又称OKX,是一个全球领先的加密货币交易平台。文章提供了欧易官方安装包的下载入口,方便用户在不同设备上安装欧易客户端。该安装包支持 Windows、Mac、Android 和 iOS 系统,用户可根据自己的设备类型选择相应版本下载。安装完成后,用户即可注册或登录欧易账户,开始交易加密货币和享受平台提供的其他服务。
