ダッシュと空白を削除してファイル名のセットを調べ、ファイル拡張子の前に接尾辞を追加するスクリプトを作成しようとしています。ここではファイルのセットは、次のとおりです。だからここBashの変数に文字列操作を割り当てるときに問題が発生する
[email protected]:~/matlab/chiroping/workspace/myFunctions/labellings/Panama20090322new$ ls Me*
Measurements 2009-03-22 Session6.xml Measurements Panama 2009-03-22 Session4.xml
Measurements Panama 2009-03-22 Session10.xml Measurements Panama 2009-03-22 Session5.xml
Measurements Panama 2009-03-22 Session1.xml Measurements Panama 2009-03-22 Session6.xml
Measurements Panama 2009-03-22 Session2.xml Measurements Panama 2009-03-22 Session7.xml
Measurements Panama 2009-03-22 Session3.xml Measurements Panama 2009-03-22 Session8.xml
は、ファイルのセットを通過するスクリプトは、ダッシュと空白を削除しているが、変数「VAR2は」表現にリセットされないかのようにそれがあります以下。最初は "tempSTR"に設定されています。
[email protected]:~/matlab/chiroping/workspace/myFunctions/labellings/Panama20090322new$ for f in Me*;
do var1=${f//[ -]/}; var2= echo -n $var1 | cut -f1 -d '.';
suffix="new"; var3= echo $var2; done
Measurements20090322Session6
tempSTR
MeasurementsPanama20090322Session10
tempSTR
MeasurementsPanama20090322Session1
tempSTR
MeasurementsPanama20090322Session2
tempSTR
MeasurementsPanama20090322Session3
tempSTR
MeasurementsPanama20090322Session4
tempSTR
MeasurementsPanama20090322Session5
tempSTR
MeasurementsPanama20090322Session6
tempSTR
MeasurementsPanama20090322Session7
tempSTR
MeasurementsPanama20090322Session8
tempSTR
OKプリントアウト式にVAR2を設定しようとしたとき、私は
var2= echo -n $var1 | cut -f1 -d '.';
このラインに問題があると思い、最初は
ベスト、
あなたのbashで 'var = echo" a "は動作しますか?私の場合はそうではありません。 var = '' echo "a" '' – khachik