Pass bash variable to python


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Pass bash variable to python
# 1  
Old 12-10-2019
Pass bash variable to python

How can I pass bash Variable to python script.
Code:
bash.sh
while read -r db
do
Printf  "%s\n" ${db} "Found"
done < path/to/file.txt

file.txt
db1
db2
db3

python.py
print(${db}_tables.replicate.fix)

# 2  
Old 12-10-2019
You can simply pass the variable value as a command line argument:-
Code:
python.py "${db}"

In you python program, you can use the sys.argv to accept and use argument:-
Code:
import sys

if len(sys.argv) == 1:
    print "Usage: python.py <argument>"
else:
    # use sys.argv[1]

# 3  
Old 12-10-2019
You could modify this method to suit your needs...
Code:
# get_variable_from_external_command.py

# # with subprocess

# import subprocess
# proc = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE)
# out, err = proc.communicate()
# print(out)

# # without subprocess
# This method works with any Python from Version 1.4.0 to the current 3.8.0.

import os

filelist = os.popen("ls -l")
text = filelist.read()
filelist.close()
print(text)

EDIT:
'Printf' in your code should read 'printf'...

Last edited by wisecracker; 12-10-2019 at 12:37 PM.. Reason: Mention Printf...
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Need to pass variable in a command and assign value to a variable

Hello All, Hope you're doing well ! I am trying below command to be passed in a shell script, header_date_14 is a variable and $1 is the name of a file I intend to pass as a command line argument, however command line argument is not being accepted. header_date_14=$(m_dump... (8 Replies)
Discussion started by: ektubbe
8 Replies

2. Shell Programming and Scripting

Pass File name and Directory Path through command to python script

I'm writing python script to get the file-names in the current directory and file sizes .I'm able to get file list and their sizes but unable to pass them through command line. I want to use this script to execute on other directory and pass directory path with file name through command line. Any... (1 Reply)
Discussion started by: etldeveloper
1 Replies

3. Shell Programming and Scripting

Pass some data from csv to xml file using shell/python

Hello gurus, I have a csv file with bunch of datas in each column. (see attached) Now I have an .xml file in the structure of below: ?xml version="1.0" ?> <component id="root" name="root"> <component id="system" name="system"> <param name="number_of_A" value="8"/> ... (5 Replies)
Discussion started by: Zam_1234
5 Replies

4. Shell Programming and Scripting

Pass arguments to bash script

myscript.sh #!/bin/bash ARGA=$1 if ; then echo "${ARGA}:Confirmed" else echo "${ARGA}:Unconfirmed" fi when I run the above script from the command line, i run it as: ./myscript.sh jsmith now some times, i need to runn it this way: (8 Replies)
Discussion started by: SkySmart
8 Replies

5. Shell Programming and Scripting

cannot pass a echo output to a variable in bash

Hi, I have a problem with passing a echo output into a variable in bash file='1990.tar' NAME='echo $file | cut -d '.' -f1'; echo $NAME the result is echo $file | cut -d . -f1 however with this one,#!/bin/bash file='1990.tar' echo $file | cut -d '.' -f1 the result is what I... (2 Replies)
Discussion started by: 1988PF
2 Replies

6. Red Hat

How to pass value of pwd as variable in SED to replace variable in a script file

Hi all, Hereby wish to have your advise for below: Main concept is I intend to get current directory of my script file. This script file will be copied to /etc/init.d. A string in this copy will be replaced with current directory value. Below is original script file: ... (6 Replies)
Discussion started by: cielle
6 Replies

7. Shell Programming and Scripting

How to pass a function with a variable parameter into another variable?

Hello again :) Am currently trying to write a function which will delete a record from a file. The code currently looks as such: function deleteRecord() { clear read -p "Please enter the ID of the record you wish to remove: " strID ... (2 Replies)
Discussion started by: U_C_Dispatj
2 Replies

8. Programming

Python: bash-shell-like less functionality in the python shell

Hello, Is there some type of functional way to read things in the Python shell interpreter similar to less or more in the bash (and other) command line shells? Example: >>> import subprocess >>> help(subprocess) ... ... I'm hoping so as I hate scrolling and love how less works with... (0 Replies)
Discussion started by: Narnie
0 Replies

9. Shell Programming and Scripting

How to pass passwords to bash scripts?

I'm finding the following command very tedious to type in all the time, so I created a one line bash script called mount.bash with the following contents: mount -t cifs //mark/C\$ -o unc=//mark\\C$,ip=10.1.1.33,user=Administrator,password=$1 /mnt/mark I don't like the fact that I have to put... (5 Replies)
Discussion started by: siegfried
5 Replies

10. Shell Programming and Scripting

Bash vs Python

Python is obviously better than expect for many reasons such as efficieny, opsys availabiliy, functions etc), but can anybody tell me how it is better structurally. I.e. If automating a procedure such as 'Autoftp' login why is Python better than Bash? Yes it uses only one file, istead of the two... (4 Replies)
Discussion started by: BISH
4 Replies
Login or Register to Ask a Question