PowerShell 是一个跨平台的 (Windows, Linux 和 OS X) 自动化和配置工具(框架),可以和已有的工具友好集成,特别优化用于处理结构化数据 (如 JSON, CSV, XML 等), REST APIs 以及对象模型。它包含一个命令行 Shell、一个关联的脚本语言以及一个用于处理 cmdlets 的框架。
PowerShell 就相当于 Linux 下的 Bash 以及 SHELL 脚本编程语言。
PowerShell 与 Bash 的对别:
Bash | PowerShell | Description |
---|---|---|
ls | dir, Get-ChildItem | List files and folders |
tree | dir -Recurse | List all files and folders |
cd | cd, Set-Location | Change directory |
pwd | pwd, $pwd, Get-Location | Show working directory |
clear, Ctrl+L, reset | cls, clear | Clear screen |
mkdir | New-Item -ItemType Directory | Create a new folder |
touch test.txt | New-Item -Path test.txt | Create a new empty file |
cat test1.txt test2.txt | Get-Content test1.txt, test2.txt | Display files contents |
cp ./source.txt ./dest/dest.txt | Copy-Item source.txt dest/dest.txt | Copy a file |
cp -r ./source ./dest | Copy-Item ./source ./dest -Recurse | Recursively copy from one folder to another |
mv ./source.txt ./dest/dest.txt | Move-Item ./source.txt ./dest/dest.txt | Move a file to other folder |
rm test.txt | Remove-Item test.txt | Delete a file |
rm -r <folderName> | Remove-Item <folderName> -Recurse | Delete a folder |
find -name build* | Get-ChildItem build* -Recurse | Find a file or folder starting with 'build' |
grep -Rin "sometext" --include="*.cs" | Get-ChildItem -Recurse -Filter *.cs | Select-String -Pattern "sometext" |
Recursively case-insensitive search for text in files |
问题内容: 我正在尝试使用自动响应来自动化mysql_secure_installation脚本。我的代码如下: 我正在自动化的实际问题如下: 但这给了我一个错误“很抱歉,您不能在此处使用空密码”,但是在屏幕上,我习惯按第一个问题的返回键。 问题答案: 您可以尝试使用Expect。看看这种自动化的mysql_secure_installation或我的修改。
无论出于什么原因,当我试图调用我正在编写的C#程序时,我试图在命令行中用“--”传递两个参数,PowerShell不会用我的命令行调用该程序。 例如,我提供命令行: 为什么会这样? 顺便说一句,如果我把它叫做: 它像预期的那样工作。 似乎没有帮助。 我之所以认为这是PowerShell的怪异之处,是因为如果我从cmd.exe运行相同的命令行,一切都会像预期的那样工作。
问题内容: 我有一些需要环境变量的仪器,我想从python代码中自动设置。所以我尝试了几种方法来实现它,但是没有一个成功。这里有些例子: 我在我的python脚本中插入以下代码 os.system(“export ENV_VAR=/some_path”) 我创建了bash脚本(env.sh)并从python运行它: export ENV_VAR=some_path os.system(“sourc
问题内容: 我想在Jenkins管道中运行像这样的嵌套shell命令: 不幸的是,当我将其格式化为管道语法时: Jenkins似乎无法正确运行它们,但是输出: 我试图在bash下运行命令,如下所示: 在jenkins管道上运行bash命令, 但最终遇到类似的问题。任何想法如何解决这个问题? 问题答案: 如果将shell命令扩展为两行,这对于Jenkins Pipeline来说将变得更加容易: 第一
我如何通过命令行运行它?
问题内容: 我正在尝试从Jenkins运行PowerShell脚本,但是它似乎完全忽略了执行策略!通过直接执行powershell.exe或使用PowerShell插件来实现 附加信息: Jenkins作为Windows服务运行(使用本地系统帐户,非交互式)。连接到该服务器并检查执行策略确实是: 但是,在运行Jenkins构建时,情况并非如此。这是在构建步骤中执行的输出: 我还尝试从构建步骤明确设
在“Linux Shell脚本编写指南”一书中 它说 扩展为 $、$2、3 等等, 扩展为 ,其中 是 的第一个字符。 $ 和 之间有什么区别, 是什么意思?
问题内容: 我经常被要求调试别人编写的Python脚本。我想将这些脚本发送到IPython,这样它将在脚本失败时落入IPython Shell中。 不幸的是,我找不到发送脚本所需的命令行选项的方法。 当我通过以下方式传递脚本及其选项时,IPython假定其中的所有内容均适用于IPython: 有解决方案或解决方法吗? 问题答案: