これらは同じですが、最初のものは二番目の作品、動作しない正確だと思います。誰もが最初に働く方法を知っていますか?私はそれがヌル問題だと思う。私は最初のものでnull値を置き換えようとしましたが、まだそれを動作させることができませんでした。おそらく私はnull値を間違って置き換えていますか?は、新しい行にNULL値を置き換えます - 私は
1)
#!/bin/bash
export CSM_DATA_DIR="/opt/halogen/dbservice/changes/Ayman/test2"
export CUSTOMER_LIST_FILES="${CSM_DATA_DIR}/*_customer_list.csv"
export ELMS_STORAGE_FILES="${CSM_DATA_DIR}/*_elms_storage.csv"
paste <(tr ' ' '\n' <<<"$CUSTOMER_LIST_FILES") <(tr ' ' '\n' <<<"$ELMS_STORAGE_FILES") | while read first_name last_name
do
echo $first_name : $last_name
done
出力間違ったこのdoesntの仕事は、二行である必要があり、正しく分割すべき
/opt/halogen/dbservice/changes/Ayman/test2/sl1_customer_list.csv /opt/halogen/dbservice/changes/Ayman/test2/sl2_customer_list.csv : /opt/halogen/dbservice/changes/Ayman/test2/sl1_elms_storage.csv /opt/halogen/dbservice/changes/Ayman/test2/sl2_elms_storage.csv
2)これはintneded
#!/bin/bash
export fname="/opt/halogen/dbservice/changes/Ayman/test2/sl1_customer_list.csv /opt/halogen/dbservice/changes/Ayman/test2/sl2_customer_list.csv"
export lname="/opt/halogen/dbservice/changes/Ayman/test2/sl1_elms_storage.csv /opt/halogen/dbservice/changes/Ayman/test2/sl2_elms_storage.csv"
paste <(tr ' ' '\n' <<<"$fname") <(tr ' ' '\n' <<<"$lname") | while read first_name last_name
do
echo $first_name : $last_name
done
出力正解として働きます、2つの行と変数を並列に読み込みます。
/opt/halogen/dbservice/changes/Ayman/test2/sl1_customer_list.csv : /opt/halogen/dbservice/changes/Ayman/test2/sl1_elms_storage.csv
/opt/halogen/dbservice/changes/Ayman/test2/sl2_customer_list.csv : /opt/halogen/dbservice/changes/Ayman/test2/sl2_elms_storage.csv
私は今、週に当接するために、すべての取得答えを質問を投稿してきた、私が言うことを知っているが、あなたに感謝していないと私は1日コミュニティにこのバックを返すように望んでいるだろう
意図的に最初の例で引用アスタリスクですか? – user000001
@ user000001であっても、リストではなく文字列に結果が格納されるため、複数のファイル名を格納するために使用するデータ構造が間違っています。 –
BTW - 'export'は、変数をローカルシェルのメモリに保存するのではなく、環境に置くことでサブプロセスが利用できるようにする場合にのみ必要です。小文字の名前が予約されているのに対し、(すべて大文字の名前は、シェルやOSの意味を持つ変数のために使用されているPOSIX定義の命名規則:とhttp://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html再を参照してくださいアプリケーション用)。 –