zoukankan      html  css  js  c++  java
  • os 对系统进行操作 | os 模块属性

     # ### os 对系统进行操作
    import os
    #system()  在python中执行系统命令
    # os.system("touch ceshi1.txt") #linux
    # os.system("ifconfig")
    # os.system("mspaint") # windows
    # os.system("ipconfig")
    
    #popen()   执行系统命令返回对象,通过read方法读出字符串
    # 使用popen 来解决windows 乱码的bug
    '''
    obj = os.popen("ipconfig")
    print(obj)
    res = obj.read()
    print(res)
    '''
    #listdir() 获取指定文件夹中所有内容的名称列表
    # 相对路径
    res = os.listdir(".")
    print(res)
    res = os.listdir("./ceshi100")
    print(res)
    # 绝对路径 (以 / 开头)
    # res = os.listdir("/mnt/hgfs/gongxiang_16/day16")
    # print(res)
    
    
    #getcwd()  获取当前文件所在的默认路径
    res = os.getcwd()
    print(res)
    # __file__ 魔术属性 : 获取当前文件的完整路径
    print(__file__)
    
    
    #chdir()   修改当前文件工作的默认路径
    # os.system("rm -rf ceshi1.txt")
    # os.chdir("/home/wangwen/mywork")
    # os.system("rm -rf 2.txt")
    # os.system("mkdir ceshi222")
    
    #environ   获取或修改环境变量  
    #(返回的是一个系统的字典 [是所有环境变量的字典] 其中PATH这个键所有对应的值,是系统命令路径)
    # 如果想要系统执行你的命令,需要先从PATH环境变量当中进行查找,如果找到了直接执行,找不到not found
    # os.system("wangwen")
    
    '''
    (1) 创建一个文件夹 在家目录里,比如mywork
    (2) 创建一个文件,叫wangwen,里面用nano 编辑 写ifconfig
    (3) 修改wangwen文件的权限 chmod 777 wangwen
    (4) sudo ./wangwen  执行当前脚本
    (5) pycharm => os.system("wangwen") => 报错 . 找不到 ,因为系统环境变量PATH当中,没有该路径
    (6) 利用os.environ 拼接一个新的路径到PATH环境变量当中,让系统帮助我们找到对应的路径,从而执行该命令
    (7) os.environ['PATH'] += ":/home/wangwen/mywork" 把路径用拼接的形式加到环境变量里
    (8) os.system("wangwen") => 成功~
    '''
    
    '''
    res = os.environ
    print(res)
    
    # 获取PATH 这个环境变量所有的路径
    os.environ['PATH'] += ":/home/wangwen/mywork"
    os.system("wangwen")
    '''
    
    '''
    environ(
    {'PATH': '/home/wangwen/PycharmProjects/untitled/venv/bin
    :/home/wangwen/bin
    :/home/wangwen/.local/bin:/usr/local/sbin
    :/usr/local/bin
    :/usr/sbin
    :/usr/bin
    :/sbin:/bin:/usr/games:/usr/local/games:/snap/bin', 'XAUTHORITY': '/home/wangwen/.Xauthority', 'XMODIFIERS': '@im=fcitx', 'XDG_DATA_DIRS': '/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/
    :/var/lib/snapd/desktop', 
    
    
    'GDMSESSION': 'ubuntu', 
    'MANDATORY_PATH': '/usr/share/gconf/ubuntu.mandatory.path', 'GTK_IM_MODULE': 'fcitx', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-oBOuAq0vFV', 'DEFAULTS_PATH': '/usr/share/gconf/ubuntu.default.path', 'PS1': '(venv) ', 'XDG_CURRENT_DESKTOP': 'Unity', 'UPSTART_SESSION': 'unix:abstract=/com/ubuntu/upstart-session/1000/1761', 'QT4_IM_MODULE': 'fcitx', 'QT_LINUX_ACCESSIBILITY_ALWAYS_ON': '1', 'LOGNAME': 'wangwen', 'JOB': 'unity-settings-daemon', 'PWD': '/mnt/hgfs/gongxiang_16/day16', 'IM_CONFIG_PHASE': '1', 'PYCHARM_HOSTED': '1', 'LANGUAGE': 'zh_CN:zh', 'PYTHONPATH': '/home/wangwen/PycharmProjects/untitled:/home/wangwen/mysoft/pycharm-2019.1.2/helpers/pycharm_matplotlib_backend:/home/wangwen/mysoft/pycharm-2019.1.2/helpers/pycharm_display', 'SHELL': '/bin/bash', 'GIO_LAUNCHED_DESKTOP_FILE': '/home/wangwen/.local/share/applications/jetbrains-pycharm.desktop', 'INSTANCE': '', 'GTK2_MODULES': 'overlay-scrollbar', 'UPSTART_INSTANCE': '', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'GTK_MODULES': 'gail:atk-bridge:unity-gtk-module', 'VIRTUAL_ENV': '/home/wangwen/PycharmProjects/untitled/venv', 'CLUTTER_IM_MODULE': 'xim', 'XDG_SESSION_PATH': '/org/freedesktop/DisplayManager/Session0', 'COMPIZ_BIN_PATH': '/usr/bin/', 'SESSIONTYPE': 'gnome-session', 'XDG_SESSION_DESKTOP': 'ubuntu', 'SHLVL': '0', 'COMPIZ_CONFIG_PROFILE': 'ubuntu', 'UPSTART_JOB': 'unity7', 'QT_IM_MODULE': 'fcitx', 'XDG_CONFIG_DIRS': '/etc/xdg/xdg-ubuntu:/usr/share/upstart/xdg:/etc/xdg', 'GNOME_KEYRING_CONTROL': '', 'LANG': 'zh_CN.UTF-8', 'XDG_SEAT_PATH': '/org/freedesktop/DisplayManager/Seat0', 'XDG_SESSION_TYPE': 'x11', 'XDG_SESSION_ID': 'c2', 'DISPLAY': ':0', 'PYCHARM_DISPLAY_PORT': '45245', 'GDM_LANG': 'zh_CN', 'PYTHONIOENCODING': 'UTF-8', 'XDG_GREETER_DATA_DIR': '/var/lib/lightdm-data/wangwen', 'UPSTART_EVENTS': 'xsession started', 'SESSION': 'ubuntu', 'GPG_AGENT_INFO': '/home/wangwen/.gnupg/S.gpg-agent:0:1', 'DESKTOP_SESSION': 'ubuntu', 'USER': 'wangwen', 'GIO_LAUNCHED_DESKTOP_FILE_PID': '2358', 'QT_ACCESSIBILITY': '1', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'XDG_SEAT': 'seat0', 'PYTHONUNBUFFERED': '1', 'QT_QPA_PLATFORMTHEME': 'appmenu-qt5', 'XDG_RUNTIME_DIR': '/run/user/1000', 'XDG_VTNR': '7', 
    'HOME': '/home/wangwen', 'GNOME_KEYRING_PID': ''})
    
    '''
    # ###--os 模块属性
    #name 获取系统标识   linux,mac(UNIX) ->posix      windows -> nt
    res = os.name
    print(res)
    
    #sep 获取路径分割符号  linux,mac -> /       window-> 
    # 如果不确定系统是什么,用os.sep 来拼接路径
    res = os.sep
    print(res) # /home/wangwen/...   windows C:Drivers
    
    #linesep 获取系统的换行符号  linux,mac -> 
        window->
     或 
    
    res = os.linesep
    print(repr(res))
    

      

  • 相关阅读:
    SQL Server 中的事务与事务隔离级别以及如何理解脏读, 未提交读,不可重复读和幻读产生的过程和原因
    微软BI 之SSIS 系列
    微软BI 之SSIS 系列
    微软BI 之SSIS 系列
    微软BI 之SSIS 系列
    微软BI 之SSIS 系列
    微软BI 之SSAS 系列
    微软BI 之SSRS 系列
    微软BI 之SSRS 系列
    配置 SQL Server Email 发送以及 Job 的 Notification通知功能
  • 原文地址:https://www.cnblogs.com/huangjiangyong/p/10920495.html
Copyright © 2011-2022 走看看