-1
我編寫了一個程序,可以根據深度和廣度創建一堆目錄。有一個參數是我想要製作所有目錄的目錄。問題是它只會使目錄位於此腳本所在的目錄中。無論如何,我可以選擇腳本創建目錄的位置嗎?如何更改bash腳本中的目錄路徑
#!/bin/sh
depth=2
breadth=5
open=($1)
for((i=0; i<depth; i++)); do
temp_open=()
for x in "${open[@]}"; do
temp=()
for((j=0; j<breadth; j++)); do
mkdir -p $i/$j
temp=(${temp[@]} "$i/$j")
done
temp_open=(${temp[@]})
done
open=(${temp_open[@]})
done
簡單的解決將是隻需把'CD 「$ 1」 ||退出'作爲第一行,以便腳本的其餘部分運行在該目錄中 –
有很多不是這裏,順便說一句。考慮通過http://shellcheck.net/ –
運行此代碼此外,這裏的#!/ bin/sh' shebang不正確,因爲POSIX sh不支持數組。它可能應該是'#!/ bin/bash',或者(因爲你沒有引用是正確的)'#!/ bin/zsh'。 –