0

HPC (クラスター) でジョブを作成するスクリプトを作成しています。4 つの変数を取得し、それらから文字列を作成する関数を作成しました。

startJob (){
    if [ $per -lt 10 ]; then
    folder=/storage/users/avityo/prog/0$1.$2$3
    else
    folder=/storage/users/avityo/prog/$1.$2$3
    fi
    echo $folder
}

これから得られる結果には、コンマによる区切りがあります

/storage/users/avityo/prog/00,.583,bfd,

これらのコンマを削除するにはどうすればよいですか?

編集:
私が得た回答とコメントから判断すると、この関数を呼び出す方法について言及する必要がありましたが、関数を正しい方法で呼び出していないことに気付きました。私はこれを使用していました:

let count=0

for per in $(seq 70 -5 0); do
    for seed in {580..583}; do
        for c in {"fs","fd","bfs","bfd"}; do
            let count=$count+1
            startJob $per, $seed, $c, $count
        done
    done
done

関数を呼び出すときにコンマを削除すると、これが修正されました。

4

2 に答える 2

2

次のように関数を呼び出しているようです。

startJob 0, 583, bfd, 4thUnusedArgument

カンマは必要ありません。引数は空白で区切られているだけです。これを試して:

startJob 0 583 bfd 4thUnusedArgument
于 2012-07-04T15:41:31.913 に答える
0

コンマのソースを編集するつもりがない場合は、つまり、それを sed にパイプするだけです。

echo $folder|sed 's/,//g'

どちらが出力されますか

/storage/users/avityo/prog/00.583bfd
于 2012-07-04T19:14:27.447 に答える