Powershell Profiles配置文件的存放位置介绍

适用于:Windows PowerShell 2.0, Windows PowerShell 3.0

当我们打开一个PowerShell对话框,并在里面创建一些变量(variables)、函数(functions)时,这些变量、函数均只在当前会话中有效。一旦我们关闭这个对话框重新打开PowerShell时,这些变量都不存在了。如果我们想保留这些设置,我们就需要用到profile,翻译过来就是配置文件。在PowerShell启动的时候,会自动导入配置文件里面的设置。这有点像autorun.bat,如果有dos系统还有印象的朋友,应该知道这个。

配置文件存放于如下几个地方,不同的配置文件,作用域不同。

1、%windir%\system32\WindowsPowerShell\v1.0\profile.ps1
它作用于所有用户、所有的Shell。

2、%windir%\system32\WindowsPowerShell\v1.0\ Microsoft.PowerShell_profile.ps1
作用于所有用户,但只作用于Microsoft.PowerShell这个shell。这个我也没懂是什么意思,难道还有不是PowerShell的PowerShell shell?呃,有点像绕口令。

3、%UserProfile%\My Documents\WindowsPowerShell\profile.ps1
作用于当前用户的所有shell。

4、%UserProfile%\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
作用于当前用户的Microsoft.PowerShell这个shell。

以上的Windows的PowerShell profiles不是自动创建的。言下之意是,如果要用,我们就自己去创建。我们只要按照上面给出的文件路径和文件名,编写我们自己的内容进去即可。

有一个变量:$profile,它保存了当前Profile的路径。使用Test-Path $profile可以查看当前有没有这个文件。如果没有,可以使用new-item -path $profile -itemtype file -force命令来创建它。然后再使用notepad $profile来快捷的打开它来编辑。我们在里面输入function pro { notepad $profile },呵呵明眼人都懂了,以后我们想要修改profile的时候,直接运行pro命令就可以了。

最后,想要PowerShell启动时能成功的载入配置文件,还需要在PowerShell的Execution Policy(执行策略)中设置允许它这样做。否则,尝试载入配置文件将会失败,PowerShell界面上也会显示错误信息。无法加载配置文件的错误提示如下:

代码如下:

C:\Users\Hong>powershell
Windows PowerShell
版权所有(C) 2012 Microsoft Corporation。保留所有权利。

. : 无法加载文件 C:\Users\Hong\Documents\WindowsPowerShell\Microsoft.PowerShell
_profile.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 http://go.micros
oft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 3
+ . 'C:\Users\Hong\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
'
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~
   + CategoryInfo          : SecurityError: (:) [],PSSecurityException
   + FullyQualifiedErrorId : UnauthorizedAccess

其实解决这个问题跟解决执行ps1文件的方法一样,因为这个Profile其实也是一个ps1格式的文件。所以使用Set-ExecutionPolicy RemoteSigned即可。

参考文章:http://msdn.microsoft.com/en-us/library/bb613488%28VS.85%29.aspx

(0)

相关推荐

  • Powershell Profiles配置文件的存放位置介绍

    适用于:Windows PowerShell 2.0, Windows PowerShell 3.0 当我们打开一个PowerShell对话框,并在里面创建一些变量(variables).函数(functions)时,这些变量.函数均只在当前会话中有效.一旦我们关闭这个对话框重新打开PowerShell时,这些变量都不存在了.如果我们想保留这些设置,我们就需要用到profile,翻译过来就是配置文件.在PowerShell启动的时候,会自动导入配置文件里面的设置.这有点像autorun.bat,

  • Keras自动下载的数据集/模型存放位置介绍

    Mac # 数据集 ~/.keras/datasets/ # 模型 ~/.keras/models/ Linux # 数据集 ~/.keras/datasets/ Windows # win10 C:\Users\user_name\.keras\datasets 补充知识:Keras_gan生成自己的数据,并保存模型 我就废话不多说了,大家还是直接看代码吧~ from __future__ import print_function, division from keras.datasets

  • IDEA如何修改配置文件的存放位置

    目录 如何修改配置文件的存放位置 IDEA读取配置文件 1.在IDEA中当使用以下代码读取配置文件时 2.创建资源文件 如何修改配置文件的存放位置 IDEA配置文件默认是放在C盘的,修改存放位置,这样系统重装的时候就不会不见了. 找到你IDEA的安装目录,进入bin目录,找到idea.properties文件打开. 去掉下面这两行路径前的注释,修改路径为你想存放的路径. 重新打开IDEA即可. IDEA读取配置文件 1.在IDEA中当使用以下代码读取配置文件时 无论配置文件放在哪个位置代码都找不

  • python pip源配置,pip配置文件存放位置的方法

    pip源配置文件可以放置的位置: Linux/Unix: /etc/pip.con ~/.pip/pip.conf (每一个我都找了都没有,所以我是在这个文件夹中创建的pip.conf文件) ~/.config/pip/pip.conf Mac OSX: ~/Library/Application Support/pip/pip.conf ~/.pip/pip.conf /Library/Application Support/pip/pip.conf Windows: %APPDATA%\pi

  • Log4j 日志文件Linux/Mac/Windows通用存放位置设置方法

    log4j1/log4j2中category的配置以及log的输出位置(windows和linux通用的log输出位置) 一.场景和需求 假设我现在有3个独立的用project(暂时用maven关联起来,当然也可以不用maven),一个是提供公共服务的infrastructure,一个是提供存储的persister,一个是提供搜索的searcher,其中提供基础服务的所有的类,例如DateUtils,HttpUtils等工具类都位于目录com.chuanliu.platform.activity

  • 找出nginx配置文件的所在位置的方法详解

    对于一台陌生的服务器或安装太久忘了位置,怎么才能简单快速的找到配置文件的位置呢?要找出配置文件的位置,需要先找出nginx可执行文件的路径 , 这里有几种方法: 1.如果程序在运行中 ps -ef | grep nginx # ps -ef | grep nginx root 29514... 对于一台陌生的服务器或安装太久忘了位置,怎么才能简单快速的找到配置文件的位置呢? 要找出配置文件的位置,需要先找出nginx可执行文件的路径 , 这里有几种方法: 1.如果程序在运行中 ps -ef |

  • nginx从编译安装到配置文件说明中文详细介绍

    本文详细介绍了Nginx从编译安装到配置文件说明,每一步都给出了详细介绍,可以作为安装Nginx的指导手册了 好了,费话不多说直接进入主题 1. 安装nginx 1.1 选择稳定版Nginx 我们编译安装nginx来定制自己的模块,机器CentOS 6.2 x86_64.首先安装缺少的依赖包: # yum -y install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel 这些软件包如

  • SpringBoot 配置文件加载位置与优先级问题详解

    [1]项目内部配置文件 spring boot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件 –file:./config/ –file:./ –classpath:/config/ –classpath:/ 即如下图所示: 以上是按照优先级从高到低(1-4)的顺序,所有位置的文件都会被加载,高优先级配置内容会覆盖低优先级配置内容. SpringBoot会从这四个位置全部加载主配置文件,如果高优先级

  • 解决persistence.xml配置文件修改存放路径的问题

    目录 persistence.xml配置文件修改存放路径 解决办法有两种 持久化persistence.xml配置文件 扩展(persistence-unit) persistence.xml配置文件修改存放路径 今天整合Spring.struts2和Spring Data JPA的时候遇到以下问题,现记录以供参考. <!-- 定义实体管理工厂bean --> <bean id="entityManagerFactory" class="org.spring

  • SqlServer修改数据库文件及日志文件存放位置

    --查看当前的存放位置 select database_id,name,physical_name AS CurrentLocation,state_desc,size from sys.master_files where database_id=db_id(N'数据库名'); --修改文件的存放位置下次启动生效 --testDb为数据库名, alter database 数据库名 modify file ( name = 文件名(不包含后缀), filename = '文件存储路径'); a

随机推荐