0
import os

print "C:\Users\print os.environ['USERNAME']\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"

私がやろうとしていることの基本は、「os」モジュールを使用して、USERNAME変数を使用してディレクトリパスを入力することです。以下の例

"C:\Users\USER Name HERE\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"

"USER Name HERE"os 変数 "USERNAME" aka に置き換えたいパスの部分ですos.environ['USERNAME']

基本的に、ファイルが現在のPCのユーザー名を見つけて、それに応じてパスを変更できるようにしたいと考えています。

ps。このコマンドは、.bat ファイルの xD で実行する方がはるかに簡単です。これは、.bat ファイルでこれを行う方法です。

SET USERNAME

:: Create new directory
md "C:\ProgramData\Data"   

COPY "C:\Users\%USERNAME%\Desktop\DxAutoPackage\Win86\data\UserData" "C:\ProgramData\Data"
COPY "C:\Users\%USERNAME%\Desktop\DxAutoPackage\Win86\system32.lnk" 

ここにいる人がbatファイルについてよく知っているかどうかはわかりませんが、私の質問をもう少し明確にするのに役立つかもしれません:P

とにかく、どんな助けでも大歓迎です。

編集: わかりました、私はそれを行ったと思っていましたが、悲しいことにそれについてはかなり間違っていました. 先走ってごめんなさい(初投稿)

import smtplib
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
from email.MIMEBase import MIMEBase
from email import Encoders
import os

msg = MIMEMultipart()
msg['From'] = 'FakeEmail@hotmail.com'
msg['To'] = 'FakeEmail@hotmail.com'
msg['Subject'] = 'simple hotmail email'
message = '%USERNAME%'
msg.attach(MIMEText(message))

ご覧のとおり、スクリプトのメッセージ セクションは %USERNAME% で編集しようとしているものです

編集:次のようにフォーマットされたパス形式に同じ変数を追加するにはどうすればよいですか:

このようなスクリプトに同じ変数を追加するにはどうすればよいでしょうか (主にパス形式)。

import os
os.makedirs("C:\Users\'USERNAME'\AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Data)
4

1 に答える 1

2

os.path.expandvarsを使用します:

>>> import os
>>> print os.path.expandvars(r"C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup")
C:\Users\falsetru\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

または、 os.environ + str.formatを使用できます:

>>> print r"C:\Users\{0[USERNAME]}\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup".format(os.environ)
C:\Users\falsetru\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

編集

import smtplib
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
from email.MIMEBase import MIMEBase
from email import Encoders
import os

msg = MIMEMultipart()
msg['From'] = 'FakeEmail@hotmail.com'
msg['To'] = 'FakeEmail@hotmail.com'
msg['Subject'] = 'simple hotmail email'
message = os.environ['USERNAME']
#message = os.path.expandvars('%USERNAME%') # alternative
msg.attach(MIMEText(message))
于 2013-07-28T12:07:22.447 に答える