Shell 脚本不创建文件
Shell script doesn't create files
我尝试使用 shell 脚本在特定文件夹中随机创建 30 到 130 个文件。我可能犯了一些错误,因为我已经很长时间没有使用 shell 了。这是我的代码:
ran=$RANDOM
while [$ran > 100]; do
$ran = $RANDOM
done
$ran=$ran+30
i=0
while [$i < $ran]; do
cat > 'Lobby/data/map_'$i'.dat'
$i=$i+1
done
希望你能帮助我。我正在使用 debian。
试试这个(使用 bash):
#!/bin/bash
ran=$(( RANDOM % 100 ))
ran=$(($ran+30))
for (( start = 1; start <= $ran; start++ ))
do
touch './Lobby/data/map_'$start'.dat'
done
或 sh:
ran=$(( $$ % 100 ))
ran=$(($ran+30))
i=0
while [ "$i" -le "$ran" ]; do
touch './Lobby/data/map_'$i'.dat'
i=$(( i + 1 ))
done
确保您有权写入此文件夹。
随机 % 100 将生成最多 100 的数字 - 添加 30 将确保您不低于 30 或高于 130,因此无需像您那样进行额外检查。
此致,
韦德兰
我尝试使用 shell 脚本在特定文件夹中随机创建 30 到 130 个文件。我可能犯了一些错误,因为我已经很长时间没有使用 shell 了。这是我的代码:
ran=$RANDOM
while [$ran > 100]; do
$ran = $RANDOM
done
$ran=$ran+30
i=0
while [$i < $ran]; do
cat > 'Lobby/data/map_'$i'.dat'
$i=$i+1
done
希望你能帮助我。我正在使用 debian。
试试这个(使用 bash):
#!/bin/bash
ran=$(( RANDOM % 100 ))
ran=$(($ran+30))
for (( start = 1; start <= $ran; start++ ))
do
touch './Lobby/data/map_'$start'.dat'
done
或 sh:
ran=$(( $$ % 100 ))
ran=$(($ran+30))
i=0
while [ "$i" -le "$ran" ]; do
touch './Lobby/data/map_'$i'.dat'
i=$(( i + 1 ))
done
确保您有权写入此文件夹。 随机 % 100 将生成最多 100 的数字 - 添加 30 将确保您不低于 30 或高于 130,因此无需像您那样进行额外检查。
此致, 韦德兰