1. 程式人生 > >python 呼叫 shell python shell 間變數傳遞

python 呼叫 shell python shell 間變數傳遞

Python -> shell:

1.環境變數

import os  
var=123var=’123’  
os.environ[’var’]=str(var)  #environ的鍵值必須是字串   
os.system(’echo $var’)  
import os  
var=123var=’123’  
os.environ[’var’]=str(var)  #environ的鍵值必須是字串  
os.system(’echo $var’)  

2.字串連線

import os  
path=’/root/a.txt’  
var=[1]  
var=’bash’  
os.system(’echo
’ + path) #注意echo後有空格 os.system(‘echo ‘ + str(var[0])) os.system(’echo ’ + var + ’ /root/c.sh’) #注意echo後和/root前有空格
import os  
path=’/root/a.txt’  
var=[1]  
var=’bash’  
os.system(’echo ’ + path)                  #注意echo後有空格  
os.system(‘echo ‘ + str(var[0]))  
os.system(’echo
’ + var + ’ /root/c.sh’) #注意echo後和/root前有空格

3.通過管道

import os  
var=123’  
os.popen(’wc -c’, ’w’).write(var)  
import os  
var=123’  
os.popen(’wc -c’, ’w’).write(var)  

4.通過檔案

output = open(‘/tmp/mytxt’, ‘w’)  
output.write(S)      #把字串S寫入檔案   
output.writelines(L) #將列表L中所有的行字串寫到檔案中   
output.close
()
output = open(‘/tmp/mytxt’, ‘w’)  
output.write(S)      #把字串S寫入檔案  
output.writelines(L) #將列表L中所有的行字串寫到檔案中  
output.close()  

5.通過重定向標準備輸出

buf = open(’/root/a.txt’, ’w’)  
print >> buf, ‘123\n’, ‘abc’  
buf = open(’/root/a.txt’, ’w’)  
print >> buf, ‘123\n’, ‘abc’  
或
print >> open(‘/root/a.txt’, ‘w’), ‘123\n’, ‘abc’ #寫入或生成檔案   
print >> open(‘/root/a.txt’, ‘a’), ‘123\n’, ‘abc’ #追加  
print >> open(‘/root/a.txt’, ‘w’), ‘123\n’, ‘abc’ #寫入或生成檔案  
print >> open(‘/root/a.txt’, ‘a’), ‘123\n’, ‘abc’ #追加  

shell -> python:

1.管道

import os  
var=os.popen(’echo -n 123’).read( )  
print var  
import os  
var=os.popen(’echo -n 123’).read( )  
print var  

2.

import commands  
var=commands.getoutput(’echo abc’)       #輸出結果   
var=commands.getstatusoutput(’echo abc’) #退出狀態和輸出結果  
import commands  
var=commands.getoutput(’echo abc’)       #輸出結果  
var=commands.getstatusoutput(’echo abc’) #退出狀態和輸出結果  

3.檔案

input = open(‘/tmp/mytxt’, ‘r’)  
S = input.read( )      #把整個檔案讀到一個字串中   
S = input.readline( )  #讀下一行(越過行結束標誌)   
L = input.readlines( ) #讀取整個檔案到一個行字串的列表中  
input = open(‘/tmp/mytxt’, ‘r’)  
S = input.read( )      #把整個檔案讀到一個字串中  
S = input.readline( )  #讀下一行(越過行結束標誌)  
L = input.readlines( ) #讀取整個檔案到一個行字串的列表中  

相關推薦

python 呼叫 shell python shell 變數傳遞

Python -> shell: 1.環境變數 import os var=123或var=’123’ os.environ[’var’]=str(var) #environ的鍵值必須是字串 os.system(’echo $var

python 呼叫其他應用後臺入如何傳遞引數

get_file_path.py import os import sys def get_file_exr(path): mpth=path.replace("\\",'/') #p

pythonPython + C/C++ 嵌入式程式設計(1):多維陣列Numpy.Array()在Python和C/C++檔案傳遞問題

Python 提供了豐富的 C API 函式,我們使用這些 C API 函式可以實現將 Python 檔案中的函式、類等在 C/C++ 檔案中進行呼叫,從而使得我們可以方便地使用 Python 程式碼來幫助我們實現一些額外的需求(如:嵌入神經網路模型)。 網上已經有很多

shell,子 shell ,export 與 變數傳遞

在我們所執行的腳本里,我們還可以啟動新的子 shell 程序,這些子 shell 程序使指令碼並行地執行著多個子任務。一般而言,在一個腳本里執行一個外部命令(普通的可執行檔案)時,shell 會 fork 出一個子程序,然後再用 exec 來執行這個程式;但是,bash shell 的內建命令(builti

使用Python呼叫mysql-python模組失敗經驗總結

最近一直在花時間研究Python語言,剛好自己裝了mysql想使用原Cent 7 64裡面的Python呼叫資料。 思路:1.檢視Python支援不支援。2.裝載模組所需要的依賴包。3安裝Mysql-python模組。4.進行測試檢視,呼叫結果。 1,從輸出函式來看,不支

shellpython呼叫企業微信傳送訊息(實現報警功能)

shell或python呼叫企業微信傳送訊息(實現報警功能) 官方文件 企業內部開發簡易教程:https://work.weixin.qq.com/api/doc#90000/90003/90487服務端API:https://work.weixin.qq.com/api/doc#90000/90135/

shell/python 呼叫mysql

一,shell呼叫mysql 坑:在shell執行mysql語句的時候密碼一定要與“-p”寫在一起: $MYSQL -h $HOST_NAME -u $USER -p"$PASSWORD" -e "${SHOWBASE}" 分開寫會出錯。 二,python呼叫mysql 1,py

Python呼叫shell命令的幾種方法(在新程序中執行shell命令)

有時候難免需要直接呼叫Shell命令來完成一些比較簡單的操作,比如mount一個檔案系統之類的。那麼我們使用Python如何呼叫Linux的Shell命令?下面來介紹幾種常用的方法: 1. os 模組 1.1. os模組的exec方法族 Python的exec系

python呼叫shell的方法

【轉】http://www.jb51.net/article/43502.htm 這篇文章主要介紹了python呼叫shell的方法,python呼叫shell命令的方法有許多種,大家可以參考使用 1.1  os.

python呼叫Shell指令碼:os.system(cmd)或os.popen(cmd)的區別

 兩者的區別是: os.system(cmd)的返回值只會有0(成功),1,2  os.popen(cmd)會吧執行的cmd的輸出作為值返回。 python呼叫Shell指令碼,有兩種方法:os.system(cmd)或os.popen(cmd),前者返回值是指令碼的退出

python呼叫shell連結mysql資料庫進行操作

話不多說,直接上code python 指令碼:test_mysql.py #!/user/bin/env python #coding=utf-8 import subprocess def system_command(command): process

python 呼叫shell命令的方法

有如下幾種方法: 1. os.system(command)     此函式會啟動子程序,在子程序中執行command,並返回command命令執行完畢後的退出狀態,如果command有執行內容,會在標準輸出顯示。這實際上是使用C標準庫函式system()實現的。

python呼叫shell指令碼的兩種方法

os.system()和os.popen() 1.python呼叫Shell指令碼,有兩種方法:os.system()和os.popen(), 前者返回值是指令碼的退出狀態碼,後者的返回值是指令碼執行過程中的輸出內容。 >>>help(

Python呼叫adb shell

import os import subprocess import codecs #使用popen def execmd(cmd): f=os.popen(cmd) text=f.read() f.close() return text

變數shell指令碼傳遞

前幾篇文章中已經介紹過區域性變數和環境變數的含義,接下來我們來拓展下,看看變數怎樣實現在shell指令碼 中的傳遞shell指令碼其實是用當前shell的子shell去執行的,所以在shell指令碼中定義的普通變數只適用於當前 shell的子shell環境,也就是說在當前s

python如何實現像shell中的case功能

short python3.5 [0 語句 type shell中的 url -- 如何實現 我們知道在shell腳本裏是支持case語句,當位置參數為空時,會提示我們怎麽使用腳本 那麽在python怎麽實現呢?也使用case嗎? python裏不支持case語句,但是也有

任意一個英文的純文本文件,統計其中的單詞出現的個數(shell python 兩種語言實現)

統計文本英文單詞個數 python shell sort uniq 現有plain text titled test.txt,統計其中的單詞出現的個數。 test.txt的內容: i have have application someday oneday day demo i have some one c

appium+python自動化38-adb shell按鍵操作(input keyevent)

eve semi tab pytho col AD 字符 ash xpl 前言 接著上篇介紹input裏面的按鍵操作keyevent事件,發送手機上常用的一些按鍵操作 keyevent 1.keyevent事件有一張對應的表,可以直接發送對應的數字,也可以方式字符串,如下兩

Python和NetCore、Shell分別開發一個Ubuntu版的定時提醒(附NetCore跨平臺的兩種發布方式)

not 代碼 程序 異常 read bsp install dia alt Python3 與 C# 基礎語法對比:https://www.cnblogs.com/dotnetcrazy/p/9102030.html 平時經常用定時提醒來提高工作效率,到了Linux。。

[轉載] shell 迴圈變數傳遞問題

shell 迴圈變數傳遞問題 2016年04月07日 17:00:04 光頭阿瓜 閱讀數:3241更多 個人分類: linux 如例子中:   #!/bin/bash file="/etc/passwd" let num=0 cat $file | while re