Linux shell脚本中特殊字符含义有哪些(2)
Linux
然后,在终端上执行以下命令:
$ ./test.sh one two three
当我们执行脚本时,输出如下所示:
Using $*:
one two three
Using $@:
one
two
three
我们可以看到,使用∗时,所有参数都解释为单个字符串,由空格分隔。
而使用@时,每个参数都被解释为一个单独的字符串,并独立处理。
在大多数情况下,使用$@是更加灵活和安全的选项,因为它可以独立处理每个参数,而不会将它们合并为单个字符串。
6. 【$?】:上一个命令的退出状态码
#!/bin/bash
ls /
echo "Exit status code: $?"
由于ls /应该会执行成功,因此运行脚本后输出Exit status code: 0,表示上一个命令执行成功。
7. 【$$】:当前进程ID号
$$是一个特殊的变量,用于获取当前正在运行的Shell脚本的进程ID(PID)。
这个变量对于在Shell脚本中跟踪和识别进程非常有用,或者将PID用于生成唯一的临时文件名。
以下是一个简单的示例脚本,它使用$$变量来创建一个唯一的临时文件名:
#!/bin/bash
tempfile=/tmp/myprog.$$
echo "Program is running with PID $$."
echo "Temp filename is $tempfile."
#rest of the script goes here...
在上述示例中,我们使用了$$变量来创建一个唯一的文件名,将其存储在$tempfile变量中,并在控制台输出当前脚本运行的进程ID。这个唯一的文件名将被用于存储程序输出或其他的过程。
使用$$变量时,需要注意它只能获取当前Shell脚本的PID而不能获取任何子进程或后台任务的PID。
8. 【$!】:最近一次在后台运行的进程的PID号
在Linux Shell脚本中,!是一个特殊变量,用于获取最近一次在后台运行的进程的PID号(进程ID号)。
! 通常用于在脚本中启动后台进程,并且需要获取后台进程的PID号。
以下是一个示例脚本 test.sh,它使用&运算符来将程序启动到后台运行,并使用$!变量获取需要的PID号:
#!/bin/bash
echo "Starting background process..."
sleep 5 &
background_pid=$!
echo "The background process PID is: $background_pid"
上述脚本中的sleep命令会在后台执行5秒钟,并执行$!将其PID号赋值给变量background_pid。
最后,脚本会输出后台进程的PID号。
执行该脚本的命令是:./test.sh,其输出如下:
相关阅读
-
u盘电脑做系统教程怎么做 3分钟制作系统u盘的小技巧
本文导读:u盘电脑做系统教程怎么做和3分钟制作系统u盘的小技巧的内容,相关内容具体如下: 我看好多网友私信给我截图发的还有留言问我如何将u盘制作成启动盘装系统 今天给大家详细说
-
u盘pe启动盘制作教程 制作pe系统u盘装系统详细步骤
今日重点为您介绍u盘pe启动盘制作教程和制作pe系统u盘装系统详细步骤的电脑小知识,一起来看看吧! 以前电脑系统重装技术没现在发达的时候,重装系统的主要方法都是使用光盘去给系统重
-
win10怎么设置win7主题 win10主题更换为win7主题
文章摘要:win10主题更换为win7主题的方法内容,关于win10怎么设置win7主题 win10主题更换为win7主题,下面为详细的介绍。 不少的IT袋用户更新了win10系统以后,觉得没有win7的主题好看,那么我们
-
win10强制关机教程 win10关机关不掉要强制关机
为关注IT袋网的网友们详解win10强制关机教程的内容,关于win10强制关机教程 ,很不错的方法小知识,建议收藏哦! 不少的IT袋用户在玩电脑的时候都会遇到死机的情况,这个时候就需要将电脑


