sqliteコマンド用のBashスクリプト

sqliteコマンド用のBashスクリプト

sqliteクエリに変数を使用する必要があるbashスクリプトを実行したいと思います。

私はスクリプトの実際の経験はありません。とにかく、次のことを試しましたが、うまくいきません。エラーも発生せず、何も表示されません。

#!/bin/bash
echo name   
read name   
sqlite3 /arch.db << 'EOF'
.headers on
select type, number, address from documents where name = '$name';
EOF

助けてくれてありがとう。

ベストアンサー1

スクリプトに応答する前に、パスが正しいことを確認してください。このパスはルートから検索することをsqlite3 /arch.db意味します。arch.db/

たぶんあなたはどういう意味ですか./arch.db?では、sqlite dbファイルはスクリプトの同じパスにありますか?

** $namevarは二重引用符で囲まれています'。これは、変数が変数ではなく文字列として扱われることを意味します。

スクリプトは次のように書き換えることができます。

#!/bin/bash
echo name   
read name   
sqlite3 ./arch.db <<EOF
.headers on
select type, number, address from documents where name = "$name";
EOF

おすすめ記事