shell 脚本把变量内容当命令执行
时间: 2023-08-03 10:02:46 浏览: 81
您可以使用`eval`命令将变量内容作为命令执行。以下是一个示例:
```shell
#!/bin/bash
command="ls -l"
eval $command
```
在上面的示例中,将字符串"ls -l"存储在变量`command`中,并使用`eval`命令执行该变量的内容,即执行`ls -l`命令。
请注意,使用`eval`命令时要小心,确保变量内容是可信的,以避免潜在的安全风险。
相关问题
crontab定时执行shell脚本b变量
crontab是一个用于定时执行任务的工具,可以用来定期执行shell脚本,其中可以传递变量。具体来说,可以在crontab配置文件中通过环境变量的方式设置变量,然后在shell脚本中通过$变量名的方式引用这些变量。
举个例子,如果要每天凌晨1点执行一个shell脚本,同时传递一个变量给该脚本,可以在crontab配置文件中添加如下一行:
```
0 1 * * * MY_VAR="hello world" /path/to/my/script.sh
```
上述配置会在每天凌晨1点执行`/path/to/my/script.sh`脚本,并设置一个名为`MY_VAR`的环境变量,其值为`hello world`。然后在`/path/to/my/script.sh`中就可以通过 `$MY_VAR` 的方式来引用这个变量了。
shell脚本位置变量
Shell 脚本位置变量是指在 Shell 脚本中可以使用的一些特殊变量,用来表示脚本文件的位置和相关信息。常见的 Shell 脚本位置变量包括:
1. $0:表示当前脚本的文件名。
2. $1-$9:表示当前脚本的参数,$1 表示第一个参数,$2 表示第二个参数,以此类推,最多可以表示 9 个参数。
3. $@:表示所有参数列表。
4. $#:表示参数个数。
5. $?:表示上一个命令的退出状态,0 表示成功,非 0 表示失败。
6. $$:表示当前脚本的进程 ID。
7. $!:表示后台运行的最后一个进程的进程 ID。
使用这些位置变量可以方便地获取脚本文件的位置和参数信息,从而进行相应的处理。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)