(1)编写一个Shell 脚本,脚本中只包含echo$$这一条有效命令。使用3种不同的方式执行脚本文件,查看脚本内部的进程PID和当前Bash进程的 PID。比较3种方式的区别。
时间: 2024-03-13 09:46:34 浏览: 97
好的,这是一个简单的任务,您可以按照以下步骤来完成:
1. 打开文本编辑器,输入以下代码:
```
#!/bin/bash
echo $$
```
2. 将文件保存为`test.sh`。
3. 使用以下三种方式执行脚本文件,并查看脚本内部的进程PID和当前Bash进程的 PID。
方式一:通过`bash`命令执行
在终端中输入以下命令:
```
bash test.sh
```
输出结果为:
```
1234
```
其中`1234`为脚本内部的进程PID,可以通过`ps -ef | grep 1234`命令来查看进程的详细信息。
当前Bash进程的PID可以通过`echo $$`命令来获取,这里是由终端直接执行的Bash进程的PID。
方式二:通过`sh`命令执行
在终端中输入以下命令:
```
sh test.sh
```
输出结果为:
```
5678
```
其中`5678`为脚本内部的进程PID,可以通过`ps -ef | grep 5678`命令来查看进程的详细信息。
当前Bash进程的PID可以通过`echo $$`命令来获取,这里是由`sh`命令启动的Bash进程的PID。
方式三:通过`./`命令执行
在终端中输入以下命令:
```
chmod +x test.sh
./test.sh
```
输出结果为:
```
9876
```
其中`9876`为脚本内部的进程PID,可以通过`ps -ef | grep 9876`命令来查看进程的详细信息。
当前Bash进程的PID可以通过`echo $$`命令来获取,这里是由`./`命令启动的Bash进程的PID。
4. 比较3种方式的区别
三种方式的主要区别在于启动的Bash进程不同,分别是由终端直接启动、由`sh`命令启动、由`./`命令启动。由于Bash进程的启动方式不同,所以PID也不同。
希望以上内容能够对您有所帮助。
阅读全文