我对Linux非常陌生,在CentOS中应该是一个非常简单的Bash脚本。 #! /bin/bash # script to restore the cognos rds from snapshot export AWS_RDS_HOME=/opt/aws/apitools/rds export PATH=$PATH:$AWS_RDS_HOME/bin export AWS_CREDENTIAL_FILE=$AWS_RDS_HOME/credential-file-path.template echo $AWS_RDS_HOME echo $PATH echo $AWS_CREDENTIAL_FILE rds-delete-db-instance mydb –final-db-snapshot-identifier mydb-daily-$(date +%Y)-$(date +%m)-$(date +%d) –force -region eu-west-1 我添加了回声,以便我可以看到发生了什么事情。 我运行时的输出 sh myscript.sh 是: /opt/aws/apitools/rds /bin/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/aws/bin:/home/ec2-user/bin:/opt/aws/apitools/rds /credential-file-path.template rds-delete-db-instance: command not found 所以,当我引用在同一脚本中设置的其他环境variables时,看起来导出命令不起作用。 我哪里错了? 谢谢 更新:我已经尝试了下面的build议,但不喜欢。 运行bash -x很有趣。 当我尝试连接时,下面的“\ r”是否可以放在后面? 例如 […]
我有一套testing各种移动设备的RewriteCond规则,然后在useragent匹配iPhone或Android设备时设置“env = device:.iphone”或“env = device:.smartphone”等环境variables。 我正尝试通过错误页面将用户redirect到每个设备的定制样式的404/500服务器错误页面。 理想情况下,我希望能够testing一个variables,然后写入一个自定义的ErrorDocumentstring。 但是,在这种情况下,apache似乎不起作用。 任何想法如何构build如果/其他testing在环境variables的apache conf文件?
在我的木偶脚本中,我有2个执行不同batch file的exec调用 exec { command => 'file1.bat' } exec { command => 'file2.bat' } 如果file1.bat使用SET环境variables SET VAR1=someVal 它不能从我预期的file2.bat访问。 但是,如果我使用SETX SETX VAR1 someVal -m 它在file2.bat中仍然不可用。 我已经能够对file2.bat进行variables更改的唯一方法是直接在file1.bat中的registry(使用reg ADD)中设置variables,然后在file2.bat中查询它(使用reg QUERY)。 有一个更好的方法吗? 我无法将file1.bat和file2.bat组合到一个脚本中,因为它们在别处是独立使用的。
我在CentOS上为用户设置了一个环境variables,只是简单地说: 1.)与用户login 2.)转到他们的主目录cd ~并创build一个文件.profile 3.)在.profile文件中添加以下内容: export APP="dev" 但是,当我: echo $APP 它是空白的。 我试过closures我的SSH会话和retying,仍然是同样的问题。
我正在使用Ubuntu 14.04 (在VirtualBox VM上),并通过aptitude安装了Apache Ant: $ aptitude install ant 二进制文件存储在/usr/bin/ : $ which ant /usr/bin/ant 现在我想设置ANT_HOME并将其添加到我的PATH环境variables中。 在Windows上,很容易find正确的文件夹 – ANT_HOME是存储安装的文件夹,看起来像C:\Program Files\Apache Ant (或者简单地说是包含Ant二进制文件的文件夹的父目录)。 如何在Linux系统(例如Ubuntu服务器)中findANT_HOME的正确path? UPDATE Oracle网站上的文档说: 将以下行添加到文件中,replace安装Ant的目录: ANT_HOME=/apache-install-dir/apache-ant-version 如何findapache-install-dir的path?
在RHEL 6.7上,我添加了文件/ etc / environment: JAVA_HOME="/opt/jdk1.8.0_91" JRE_HOME="{JAVA_HOME}/jre" M2_HOME="/usr/local/apache-maven" M2="{M2_HOME}/bin" PATH="{JAVA_HOME}/bin:{JRE_HOME}/bin:{M2}:{PATH}" 现在login,bash提供了以下错误: -bash: id: command not found -bash: id: command not found -bash: id: command not found -bash: uname: command not found 删除或重命名/ etc / environment会导致问题消失。 注意:我不想使用/ etc / profile,因为我希望这些设置可用于非交互式shell。
我正在使用组策略pipe理编辑器将环境variables添加到我们的组策略中。 一般来说,这个环境variables不应该已经存在于主机上,但是如果是这样的话,我希望组策略设置完全替代主机上设置的任何东西。 环境variables编辑器给了我两个类似的选项 – 更新和replace 。 两者的帮助文本几乎完全相同,都表示将replace指定环境中的variables 。 这两个选项有什么区别? 我应该select哪一个来完成我想要的?
在“input服务器名称”并在下面的脚本中设置$servselectvariables之后,在select“Hello”和“Goodbye”选项后,variables将丢失。 这需要再次完成“input服务器名称”提示。 有没有办法维持这个variables,直到脚本完全退出? 任何build议将不胜感激。 #!/bin/bash # while true; do read -p "Enter server name: " servselect servselect=${servselect:-servselect} echo $servselect has been selected! printf '%s\n' \ "" \ "[A] Hello" \ "[B] Goodbye" \ "[Q] Quit" \ "" read -n1 -p 'Enter response here:' response case $response in [Aa]* ) printf '%s\n' \ "" \ "Hello, […]
在Ubuntu 10.04服务器上,我可以在哪里调整所有应用程序和所有用户都能看到的基本$ PATH环境variables值?
我想在Windows 7中设置一个自定义环境variables,这需要以编程方式完成,因为它必须在多台计算机上进行设置。 我一直在testing一个单一的机器,但是当我以编程方式创build它时,它存在于该会话中(即,在命令窗口处于打开状态的DOS下,或在ISE打开时在Powershell中) – 然而,当closures会话时variables消失了? 我如何使它永久? 谢谢, 本