Solved

linux shell substitute variable

Posted on 2013-05-14
2
211 Views
Last Modified: 2013-05-14
I have list of tables in t.txt file, I need to substitute all the ${table} instance with the table name in t.txt file. the challenge here is after the single quote, the ${table} variable will not be substituted, like the following code, only the first ${table} will be substituted, the last two does not. How can I do this? Thanks.

for table in `cat t.txt`
do

curl -XPUT "http://localhost:9200/_river/${table}_river/_meta" -d '{
    "type" : "jdbc",
    "jdbc" : {
        "driver" : "oracle.jdbc.driver.OracleDriver",
        "url" : "jdbc:oracle:oci:@test",
        "user" : "test",
        "password" : "test",
        "sql" : "select * from ${table} where rownum<3"
    },
    "index" : {
        "index" : "database",
        "type" : "${table}"
    }
}' 

done

Open in new window

0
Comment
Question by:xiaoyunwu
2 Comments
 
LVL 84

Accepted Solution

by:
ozo earned 500 total points
ID: 39166512
curl -XPUT "http://localhost:9200/_river/${table}_river/_meta" -d '{
    "type" : "jdbc",
    "jdbc" : {
        "driver" : "oracle.jdbc.driver.OracleDriver",
        "url" : "jdbc:oracle:oci:@test",
        "user" : "test",
        "password" : "test",
        "sql" : "select * from '${table}' where rownum<3"
    },
    "index" : {
        "index" : "database",
        "type" : "'${table}'"
    }
}'
0
 

Author Closing Comment

by:xiaoyunwu
ID: 39166537
Thank you, ozo!
0

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

Over the years I've spent many an hour playing on hardened, DMZ'd servers, with only a sub-set of the usual GNU toy's to keep me company; frequently I've needed to save and send log or data extracts from these server back to my PC, or to others, and…
Active Directory replication delay is the cause to many problems.  Here is a super easy script to force Active Directory replication to all sites with by using an elevated PowerShell command prompt, and a tool to verify your changes.
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
Illustrator's Shape Builder tool will let you combine shapes visually and interactively. This video shows the Mac version, but the tool works the same way in Windows. To follow along with this video, you can draw your own shapes or download the file…

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now