Tag: 脚本

从Bash命令查找并replace文本文件

find并replace给定的inputstring(比如abc ,并replace为另一个string(比如文件/tmp/file.txt XYZ ,最简单的方法是什么? 我正在写一个应用程序,并使用IronPython通过SSH执行命令 – 但我不知道Unix那么好,不知道该找什么。 我听说Bash除了是一个命令行界面之外,可以是一个非常强大的脚本语言。 所以,如果这是真的,我假设你可以执行这样的操作。 我可以用bash来做到这一点吗?为了实现我的目标,最简单的(一行)脚本是什么?

为什么等于操作员不工作,如果它不包括空间?

我试了下面的脚本 #!/bin/bash var1="Test 1" var2="Test 2" if [ "$var1"="$var2" ] then echo "Equal" else echo "Not equal" fi 它给了我Equal 。 虽然它应该打印Not equal 只有当我插入空间=它按预期工作 if [ "$var1" = "$var2" ] 和打印Not equal 为什么这样? 为什么"$var1"="$var2"与"$var1" = "$var2"不一样? 此外,当我写了if [ "$var1"= "$var2" ] ,它给了 line 4: [: Test 1=: unary operator expected 这是什么意思? 它如何期待一元运算符?

Windows内置的ZIP压缩可以编写脚本吗?

Windows XP / Vista / 2003/2008内置的ZIP压缩是否可以编写脚本? 我必须从BAT / CMD文件中调用什么可执行文件? 或者是否可以用VBScript来做到这一点? 我意识到这是可能的使用WinZip , 7-Zip和其他外部应用程序,但我正在寻找的东西,不需要安装外部应用程序。

在PHP中运行MySQL * .sql文件

我有两个*.sql文件,我创build一个新的网站数据库时使用。 第一个文件创build所有表。 第二个文件填充一些默认logging。 我想从PHP执行这些文件。 我也使用Zend_Framework,如果这将有助于实现这一点。 附加信息 我没有控制台访问权限 我试图在我们的应用程序内自动生成网站。 解 使用shell_exec() … $command = 'mysql' . ' –host=' . $vals['db_host'] . ' –user=' . $vals['db_user'] . ' –password=' . $vals['db_pass'] . ' –database=' . $vals['db_name'] . ' –execute="SOURCE ' . $script_path ; $output1 = shell_exec($command . '/site_db.sql"'); $output2 = shell_exec($command . '/site_structure.sql"'); …我从来没有得到有用的输出,但在另一个线程上遵循一些build议 ,并最终得到了一切工作。 我切换到–option=value格式的命令和使用–execute="SOURCE …"而不是<执行该文件。 […]

为什么全球口译员锁?

Python的Global Interpreter Lock的function究竟是什么? 编译为字节码的其他语言是否采用类似的机制?

我怎样才能删除Unix中的文件中的重复行?

有没有办法在Unix中删除文件中的重复行? 我可以用sort -u和uniq命令来完成。 但我想用sed或awk 。 那可能吗?

从Bash中的文件中删除最后一行

我有一个文件, foo.txt ,包含以下几行: a b c 我想要一个简单的命令,导致foo.txt的内容是: a b

sudo echo“something”>> / etc / privilegedFile不起作用…有没有其他的select?

这是一个非常简单的问题,至less它应该是这样的,关于Linux中的sudo权限。 有很多时候,我只是想附加一些东西到/etc/hosts或类似的文件,但最终不能够,因为>和>>都不允许,即使有根。 有没有办法使这个工作,而不必su或sudo su到根?

如何在提交表单后在后台运行PHP脚本?

问题 我有一个表格,在提交时,将运行基本代码来处理提交的信息,并将其插入到数据库中以显示在通知网站上。 另外,我有一个通过电子邮件和短信收到这些通知的人的名单。 这个列表是微不足道的(只需要大约150个),但是这足以导致在整个用户表中循环并发送150多封电子邮件。 (电子邮件按照邮件服务器的系统pipe理员的要求单独发送,因为有大量邮件策略。) 在这段时间内,发布警报的个人将在表单的最后一页坐了近一分钟,没有任何正面的强化,他们的通知被张贴。 这导致了其他潜在的问题,所有有可能的解决办法,我觉得是不太理想的。 首先,海报可能认为服务器滞后,再次点击“提交”button,导致脚本重新开始或运行两次。 我可以通过使用JavaScript来禁用button来解决这个问题,并将文本replace为“Processing …”,但是这并不理想,因为用户在脚本执行期间仍然停留在页面上。 (另外,如果禁用JavaScript,则此问题仍然存在。) 其次,海报可能会在提交表单后过早closures标签或浏览器。 该脚本将继续在服务器上运行,直到它尝试写回到浏览器,但是,如果用户然后浏览到我们域内的任何页面(而脚本仍在运行),则浏览器挂起加载页面直到脚本结束。 (这只发生在浏览器的标签或窗口closures,而不是整个浏览器应用程序。)但是,这是不太理想的。 (可能的)解决scheme 我已经决定要将脚本的“电子邮件”部分分成一个单独的文件,我可以在通知发布后调用。 我原本以为在通知成功发布之后,把它放在确认页面上。 但是,用户不知道这个脚本正在运行,任何exception对他们来说都是不明显的。 这个脚本不能失败。 但是,如果我可以运行这个脚本作为后台进程呢? 所以,我的问题是:我如何执行PHP脚本作为后台服务触发,并完全独立于用户在表单级别完成的操作? 编辑:这不能 cron'ed。 它必须在提交表单的时候运行。 这些是高优先级的通知。 另外,运行我们服务器的系统pipe理员不允许cron运行超过5分钟。

如何在迭代时从字典中删除项目?

在迭代Python的时候从Python字典中删除项目是否合法? 例如: for k, v in mydict.iteritems(): if k == val: del mydict[k] 这个想法是从字典中移除不符合特定条件的元素,而不是创build一个新的字典,它是被迭代的一个子集。 这是一个很好的解决scheme? 有更优雅/有效的方法吗?