小编sim*_*ing的帖子

是否可以将参数传递给 Python 脚本?

我知道如何将参数传递给 shell 脚本。这些参数在 AWS 数据管道中声明并通过。这是一个 shell 脚本的样子:

firstarg=$1
secondarg=$2
Run Code Online (Sandbox Code Playgroud)

我如何在 Python 中做到这一点?是完全一样的吗?

python

32
推荐指数
2
解决办法
12万
查看次数

如何运行 SSH 命令来设置 StrictHostKeyChecking=no?

我正在尝试运行该命令,ssh -o StrictHostKeyChecking=no但我对如何运行它有点迷茫。我尝试从 shell 脚本运行它,但输出是列出所有参数的手册页或设置。

然后我尝试从 shell (Cygwin) 本身运行该命令,但得到了相同的 man 输出。如何运行命令?我需要提供凭据或任何东西吗?

shell bash ssh shell-script

7
推荐指数
1
解决办法
2万
查看次数

如何从 Ubuntu 卸载 Python 2?

奇怪的是没有找到任何答案,而且由于我从未从 Linux 上卸载过任何东西,我不知道从哪里开始。我需要 Python3,并且只能通过 SSH 访问我正在执行此卸载/安装的机器。

我想卸载 Python2 和所有软件包,然后安装 Python3。是否有任何简单的命令可以运行以执行卸载 Python2 的第一部分?

python python3

2
推荐指数
1
解决办法
1万
查看次数

重定向回 shell 中的 stderr

有点重新问我的问题,因为我错误地用 bash shell 标签询问,并认为这是一个更合适的地方。

我正在 AWS DataPipeline 中编写一个连接到关系数据库的 shell 脚本,即使对于 SQL 错误,退出代码也是 0,因此我需要捕获 + 重定向 stderr。

我将 stderr 重定向到另一个文件以检查其内容,但仍然希望填充 stderr。原因是 DataPipeline 捕获所有 stderr 和 stdout 并将它们全部放入 1 个日志中。由于重定向,它不会从失败的 sql 命令中捕获 stderr。有没有办法仍然填充 stderr?我目前拥有的是:

/bin/snowsql -f /home/scripts/dev/dev.sql 2> /home/scripts/dev/stderr.txt
Run Code Online (Sandbox Code Playgroud)

以下内容适用于 Bash:

/bin/snowsql -f /home/scripts/dev/dev.sql 2> >(tee /home/scripts/dev/stderr.txt >&2)
Run Code Online (Sandbox Code Playgroud)

我找不到 shell 进程替换的正确语法。在 shell 中执行上述操作相当于什么?

shell io-redirection shell-script

1
推荐指数
1
解决办法
705
查看次数

如何解压缩 xlsx 文件?

我在网上找到了一个可用于解压缩docx文件的命令,但我无法调整它来解压缩xlsx文件。命令是

unzip -p some.docx word/document.xml | sed -e 's/<[^>]\{1,\}>//g; s/[^[:print:]]\{1,\}//g'
Run Code Online (Sandbox Code Playgroud)

我无法理解第二个参数word/document.xml及其使用方式。

当我尝试转换 xlsx 文件时,我尝试了:

unzip -p testexcel.xlsx excel/spreadsheet.xml | sed -e 's/<[^>]\{1,\}>//g; s/[^[:print:]]\{1,\}//g'
Run Code Online (Sandbox Code Playgroud)

但我不知道在第二个参数中放入什么来代替excel/spreadsheet.xml

zip text-processing

0
推荐指数
1
解决办法
1万
查看次数