用linux的shell,建立若干目录,目录名称为命令行参数
时间: 2024-03-23 19:43:45 浏览: 12
可以使用以下的shell脚本来建立目录:
```shell
#!/bin/bash
# 循环遍历命令行参数
for dir_name in "$@"
do
# 创建目录
mkdir $dir_name
done
```
使用方法:
在终端中运行该脚本,并传入需要创建的目录名称作为命令行参数,如下所示:
```shell
$ ./create_dirs.sh dir1 dir2 dir3
```
执行完毕后,会在当前目录下创建三个目录:dir1、dir2和dir3。
相关问题
shell命令行参数解析
在Shell脚本中,可以通过命令行参数来传递参数给脚本。Shell提供了一些内置的变量来解析命令行参数,其中最常用的是$0、$1、$2等。
- $0:表示脚本本身的名称。
- $1、$2、$3...:表示传递给脚本的参数,$1表示第一个参数,$2表示第二个参数,以此类推。
- $#:表示传递给脚本的参数个数。
- $@:表示所有传递给脚本的参数列表。
- $*:表示所有传递给脚本的参数列表,但是将所有参数作为一个整体。
通过这些变量,我们可以在Shell脚本中获取和解析命令行参数。下面是一个简单的示例:
```shell
#!/bin/bash
echo "脚本名称:$0"
echo "第一个参数:$1"
echo "第二个参数:$2"
echo "参数个数:$#"
echo "所有参数:$@"
echo "所有参数(作为整体):$*"
```
假设将上述脚本保存为`script.sh`,并执行以下命令:
```shell
$ bash script.sh arg1 arg2
```
输出结果将会是:
```
脚本名称:script.sh
第一个参数:arg1
第二个参数:arg2
参数个数:2
所有参数:arg1 arg2
所有参数(作为整体):arg1 arg2
```
通过解析这些命令行参数,我们可以根据不同的参数执行不同的逻辑,实现更加灵活的脚本功能。
shell脚本命令行参数
命令行参数是指在运行shell脚本时可以向命令行添加的数据。bash shell提供了命令行参数,可以通过在命令后面添加数据值来传递给脚本。在bash shell中,位置参数变量$0表示脚本的名称,$1表示第一个参数,$2表示第二个参数,以此类推,直到$9表示第九个参数。此外,还有一个特殊的变量${!#},它代表了最后一个命令行参数变量。当运行脚本时带有命令行参数时,${!#}将显示最后一个参数的值,当没有参数时会返回脚本的名称。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [shell脚本命令行参数简介](https://download.csdn.net/download/weixin_38606870/14892151)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [Shell脚本中的位置参数( $0、$n、${10} ) 、特殊参数( $#、$*、$@ )、shift命令和read命令详解](https://blog.csdn.net/kunkliu/article/details/122255717)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]