首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

shell脚本】$ 在shell脚本使用

shell脚本 '$' 与不同符号搭配其表示意义也会不同 特殊标志符 含义 $0 当前脚本文件名 $n 传递给脚本或函数参数。n 是一个数字,表示第几个参数。...例如,第一个参数是$1,第二个参数是$2 $# 传递给脚本或函数参数个数 $* 传递给脚本或函数所有参数 $@ 传递给脚本或函数所有参数 $?...上个命令退出状态 $$ 当前Shell进程ID $() 与 `(反引号) 一样用来命令替换使用 ${} 引用变量划分出边界 注释:$* 和 $@ 都表示传递给函数或脚本所有参数,不被双引号(" "...)包含时,都以"$1" "$2" … "$n" 形式输出所有参数。...但是当它们被双引号(" ")包含时,"$*" 会将所有的参数作为一个整体,以"$1 $2 … $n"形式输出所有参数;"$@" 会将各个参数分开,以"$1" "$2" … "$n" 形式输出所有参数

6.1K20

Shell-alias在Shell脚本使用

概述 在shell开启alias 实际操作 概述 众所周知,shell脚本使用是非交互式方式,在非交互式模式下alias扩展功能默认是关闭,此时虽然可以定义alias别名,但是shell不会将alias...别名扩展成对应命令,而是将alias别名本身当作命令执行,如果shell内置命令和PATH均没有与alias别名同名命令,则shell会找不到指定命令。...---- 在shell开启alias 使用shell内置命令shopt命令来开启alias扩展选项。...alias建立同义词来操作,如果想要在脚本使用,必须开启同义词才。...项目启动中会依赖一些环境变量,所以双机启动脚本需要显式引入.bash_profile文件。 所以我们将 开启alias命令放在 .bash_profile

2.2K10
您找到你想要的搜索结果了吗?
是的
没有找到

如何使用Shell脚本判断HDFS文件目录是否存在

---- 1 文档编写目的 本文主要讲述如何使用Shell脚本判断HDFS文件或目录是否存在,算是一个小技巧吧,这几天做PoC时候感觉还挺有用。...Shell脚本测试 3.1 测试路径是否存在 3.2 测试目录是否存在 3.3 测试文件是否存在 4....)是否存在 3 Shell脚本测试 3.1 测试路径是否存在 1、准备测试目录,包含一个文件和一个文件夹 [root@bigdata60 ~]# hadoop fs -ls /user/wdtestFound...这个特殊变量获取返回值; 3、-s和-z命令我测试过,但觉得不怎么常用,所以没在文章中讲述,有兴趣可以自己测一下,比较简单,更换一下脚本参数即可; 4、判断HDFS文件目录是否存在后,可以执行比如创建、...删除目录或文件等操作,当然还有一些更高级玩法,这里就不演示了。

5.5K20

linux c程序获取shell脚本输出

前言   Unix界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认是,借助脚本确实能够极大简化一些编程工作。...使用临时文件   首先想到方法就是将命令输出重定向到一个临时文件,在我们应用程序读取这个临时文件,获得外部命令执行结果,代码如下所示:   #define CMD_STR_LEN 1024   int...r表示command从管道读入,w表示 command通过管道输出到它stdout,popen返回FIFO管道文件流指针。pclose则用于使用结束后关闭这个指针。   ...小结   有统计数据表明,代码缺陷率是一定,与所使用语言无关。Linux提供了很多实用工具和脚本,在程序调用工具和脚本,无疑可以简化程序,从而降低代码缺陷数目。...Linux shell脚本也是一个强大工具,我们可以根据需要编制脚本,然后在程序调用自定义脚本

5.6K20

Linux Shell脚本获取本机ip地址方法

inet6|awk '{print $2}'|tr -d "addr:" 命令解释      和window下执行此命令一样道理,返回本机所有ip信息 ifconfig -a 截取包含ip行...grep inet 去掉本地指向那行 grep -v 127.0.0.1 去掉包含inet6行 grep -v inet6 2 表示默认以空格分割第二组 同理 1表示第一组​ awk...多网卡情况 倘若有多个网卡,可能会出现多个不同网段IP,这个时候如果还是执行上述命令就会返回多个IP,如下: 假设某个机器有192.*.*.8和10.*.*....*网段IP,现在要实现不同网段IP地址打印不同输出,shell脚本如下 1 #!...*global/ {print gensub(/(.*)\/(.*)/, "\\1", "g", $2)}' 这里涉及awk命令,暂不展开详讲,后面会专门有一篇介绍awk命令文章哦

26.8K20

使用 shell 脚本自动获取发版指标数据

解决方案 凡是重复性劳动都有优化空间,凡是收集数据工作都能用脚本完成——本着这两个原则,尝试做一个自动获取发版指标数据 shell 脚本。...之前有使用 curl 访问 restful api 经验 (用 shell 脚本做 restful api 接口监控),这次访问 web 服务器原理也是一样,通过浏览器页面调试功能,可以查看到一次请求详细信息...是从外部传入,这个参数其实就是从浏览器存储到文件后传递进来 curl 响应存放在 temp.gzip 文件使用 gunzip 解压缩到 temp.txt 文件,后面就可以用 txt 进行数据解析了...,填个灰度发版指标就是分分钟事儿了,程序员效率又有提升,节约下时间又可以愉快摸鱼了~ 结语 本文介绍了一种使用 shell 脚本自动获取发版指标数据方法,主要有以下几个关键点: curl 基于浏览器...后记 这个脚本总体上已经很方便了,美中不足地方是前面提到获取浏览器 cookie,如何自动登录 web 并记录 cookie?这个我又有一系列探索,后面会写成一篇单独文章分享出来。

94820

shell脚本数组常见使用方式

数组定义: shell数组定义是使用 小括号来表示,其中数组元素之间用空格作为分隔,比如: $ a=(1 2 3 abcd China) 2. 数组访问: a....获取数组元素个数: 在上述获取所有元素前面加上一个# 就可以了,如下: $ echo ${#a[*]} 5 3. 数组修改: a....追加元素到数组: shadow@DESKTOP-SRI6HMB ~ $ echo ${a[*]} 1 2 b abcd China shadow@DESKTOP-SRI6HMB ~ $ a[${#a[...数组名称中含有shell变量: 当数组名称中含有shell变量时候,此时随着shell变量变化,那么引用数组自然也就不同;此时可以通过如下方式实现 变量嵌套: 嵌套变量有两个符号,一个用来组合成完整变量名称...,另一个用于 标记组合后内容是一个变量,而后一个符号需要用 单引号括起来,剩余部分需要用双引号括起来;然后用echo 来显示这个变量,但因为 单引号 引用字符不会被shell解释,所以输出结果是单引号

3K20

shell脚本if基本使用方法

if, for, while几乎是所有编程语言关键字,在Shell编程也不例外,其中if是使用频率最高,由于Shell编程不存在对象(Object)概念,因此在if比较判断主要是对字符串、...数字值进行比较判断: 一. if基本语法 1.if与[之间要有空格 2.[]与判断条件之间也必须有空格 3.]与;之间不能有空格 二....fi #当字符串长度为0时返回真 三....对文件属性判断 1.-r file #用户可读为真 2.-w file #用户可写为真 3.-x file #用户可执行为真 4.-f file #文件存在且为正规文件为真 5....-c file #文件存在且为字符设备文件 7.-b file #文件存在且为块设备文件 8.-s file #文件大小为非0为真,可以判断文件是否为空 9.-e file #如果文件存在为真 五.

85820

使用 shell 脚本拼接 srt 字幕文件 (srtcat)

对于文稿中一些比较长行,后台会自动拆分为多个字幕段落。 srt 文件拼接 下面将拆分后音频和字幕导入 B 站云剪辑。...基于这个想法,再加上拼接 srt 文件功能并不复杂,主要是序号和时间上处理,所以决定使用 shell 脚本手搓一个,名字就叫 srtcat 吧: > sh srtcat.sh Usage: srtcat...考虑到脚本以后使用场景,面对比较大 srt 文件,性能将成为一个瓶颈,因此选择 IFS 来尽量提升脚本性能,虽然牺牲了直观性,不过保留了可拓展性。...使用Subtitle Workshop把几个srt 字幕文件合并 [8]. shell去除字符串前所有的0 [9]. shell 脚本去掉月份和天数前导零 [10]....详细解析ShellIFS变量 [11]. shell脚本实现printf数字转换N位补零 [12]. SRT字幕格式

2.9K10

shell脚本逻辑判断,文件目录属

shell脚本逻辑判断: 逻辑判断表达式:if [ $a -gt $b ]; if [ $a -lt 5 ]; if [ $b -eq 10 ]等 -gt (>); -lt(=);...,切存在 【-d file 】判断是否是目录,且存在 【 -e file 】判断文件或目录是否存在 【 -r file 】判断文件是否可读 可写 可执行 = 类似 判断不同写法:【 -f $f 】||...-e file ]; then 表示文件不存在时会怎么样 if (($a<1)); then …等同于 if [ $a -lt 1 ]; then… [ ] 不能使用,==,!...,或者被删除的话,脚本就会运行出错,出现bug 应该加上一个判断条件 #!...: 在网卡系统服务脚本,如,/etc/init.d/iptables中就用到了case 在case,可以在条件中使用“|”,表示或意思 输入一个同学分数,判断成绩是否及格,优秀。

1.3K50

Shell脚本逐行读取文件命令方法

- 开始while循环,并在变量“rows”中保存每一行内容 - 使用echo显示输出内容,$rows变量为文本文件每行内容 - 使用echo显示输出内容,输出内容包括自定义字符串和变量,$rows...- 使用echo显示输出内容,输出内容包括自定义字符串和变量,$rows变量为文本文件每行内容 Tips:可以将上面的脚本缩减为一行命令,如下: [root@localhost ~]# cat mycontent.txt...,并在变量“rows”中保存每一行内容 - 使用echo显示输出内容,$rows变量为文本文件每行内容 - 使用输入重定向<从命令行参数$1读取文件内容 方法四、使用awk命令 通过使用awk命令.../bin/bash cat mycontent.txt |awk '{print "Line contents are: "$0}' 运行结果: 总结 本文介绍了如何使用shell脚本逐行读取文件内容...,通过单独读取行,可以帮助搜索文件字符串。

8.7K21

如何处理Shell脚本特殊字符

在本教程,我们将介绍有关处理 shell 脚本特殊字符最常见用例。首先,我们将讨论 shell 脚本包装命令和变量替换。 然后,我们将处理包含特定前缀文件名。...最后,我们将看到Shellcheck实用程序运行情况,以及我们如何使用它来确保我们脚本没有任何警告。 2....阅读无选项 read命令从变量、文件或标准输入读取输入。当我们在不带任何选项shell脚本使用read命令时,它会对空格、反斜杠、续行等特殊字符进行一些操作。...七、结论 在本文中,我们讨论了如何处理 shell 特殊字符和空格。我们编写了各种小型 shell 脚本来演示针对不同用例不同方法。...最后,我们介绍了shellscheck静态分析工具以及它如何帮助我们成为更好 shell 脚本开发人员。

6.8K30
领券