我编写了一个Python脚本来检查某个电子邮件地址并将新电子邮件传递给外部程序。我怎样才能让这个脚本24/7执行,例如在Linux中把它变成守护进程或服务。我是否还需要一个在程序中永不结束的循环,还是可以通过多次重新执行代码来完成? 最佳答案 这里有两个选择。制作一个适当的cron作业来调用您的脚本。Cron是GNU/Linux守护程序的通用名称,它根据您设置的计划定期启动脚本。您将脚本添加到crontab中或将符号链接(symboliclink)放置到特殊目录中,守护程序会处理在后台启动它的工作。您可以readmore在维基百科。
我做了Bash之前的脚本,并且在开头没有#!/bin/bash的情况下它们都运行良好。把它放进去有什么意义?会有什么不同吗?另外,#怎么发音?我知道!发音为“bang”。#!怎么读? 最佳答案 这是一个约定,因此*nixshell知道要运行哪种解释器。例如,旧版本的ATT默认使用sh(Bourneshell),而旧版本的BSD默认使用csh(Cshell)。即使在今天(大多数系统运行bash,“BourneAgainShell”),脚本也可以是bash、python、perl、ruby、PHP等。例如,您可能请参阅#!/bin/pe
我做了Bash之前的脚本,并且在开头没有#!/bin/bash的情况下它们都运行良好。把它放进去有什么意义?会有什么不同吗?另外,#怎么发音?我知道!发音为“bang”。#!怎么读? 最佳答案 这是一个约定,因此*nixshell知道要运行哪种解释器。例如,旧版本的ATT默认使用sh(Bourneshell),而旧版本的BSD默认使用csh(Cshell)。即使在今天(大多数系统运行bash,“BourneAgainShell”),脚本也可以是bash、python、perl、ruby、PHP等。例如,您可能请参阅#!/bin/pe
我正在尝试在脚本中使用cURL并使其不显示进度条。我尝试了-s、-silent、-S和-quiet选项,但它们都不起作用。这是我尝试过的一个典型命令:curl-shttp://google.com>temp.html我只在推送到文件时才得到进度条,所以curl-shttp://google.com没有进度条,但是curl-shttp://google.com>temp.html可以。 最佳答案 curl-shttp://google.com>temp.html适用于Ubuntu9.10上的curl版本7.19.5(无进度条)。但是如
我正在尝试在脚本中使用cURL并使其不显示进度条。我尝试了-s、-silent、-S和-quiet选项,但它们都不起作用。这是我尝试过的一个典型命令:curl-shttp://google.com>temp.html我只在推送到文件时才得到进度条,所以curl-shttp://google.com没有进度条,但是curl-shttp://google.com>temp.html可以。 最佳答案 curl-shttp://google.com>temp.html适用于Ubuntu9.10上的curl版本7.19.5(无进度条)。但是如
我需要编写一个脚本来输入程序的多行输入(psql)。经过一番谷歌搜索,我发现以下语法有效:cat这正确地构造了多行字符串(从BEGIN;到END;,包括在内)并将其作为输入通过管道传输到psql.但我不知道它是如何/为什么起作用的,有人可以解释一下吗?我主要指的是cat,我知道>输出到文件,>>附加到文件,从文件中读取输入。是什么意思?具体怎么做?还有手册页吗? 最佳答案 cat在Bash中处理多行文本时,语法非常有用,例如。将多行字符串分配给shell变量、文件或管道时。cat的示例Bash中的语法用法:1。将多行字符串分配给sh
我需要编写一个脚本来输入程序的多行输入(psql)。经过一番谷歌搜索,我发现以下语法有效:cat这正确地构造了多行字符串(从BEGIN;到END;,包括在内)并将其作为输入通过管道传输到psql.但我不知道它是如何/为什么起作用的,有人可以解释一下吗?我主要指的是cat,我知道>输出到文件,>>附加到文件,从文件中读取输入。是什么意思?具体怎么做?还有手册页吗? 最佳答案 cat在Bash中处理多行文本时,语法非常有用,例如。将多行字符串分配给shell变量、文件或管道时。cat的示例Bash中的语法用法:1。将多行字符串分配给sh
如何确定脚本本身内的Bash脚本文件的名称?如果我的脚本在文件runme.sh中,那么如何在不进行硬编码的情况下显示“您正在运行runme.sh”消息? 最佳答案 me=`basename"$0"`要通过符号链接(symboliclink)1进行阅读,这通常不是您想要的(您通常不想这样混淆用户),请尝试:me="$(basename"$(test-L"$0"&&readlink"$0"||echo"$0")")"IMO,这会产生令人困惑的输出。“我运行了foo.sh,但它说我在运行bar.sh!?一定是一个错误!”此外,使用不同名称
如何确定脚本本身内的Bash脚本文件的名称?如果我的脚本在文件runme.sh中,那么如何在不进行硬编码的情况下显示“您正在运行runme.sh”消息? 最佳答案 me=`basename"$0"`要通过符号链接(symboliclink)1进行阅读,这通常不是您想要的(您通常不想这样混淆用户),请尝试:me="$(basename"$(test-L"$0"&&readlink"$0"||echo"$0")")"IMO,这会产生令人困惑的输出。“我运行了foo.sh,但它说我在运行bar.sh!?一定是一个错误!”此外,使用不同名称
已结束。此问题不符合StackOverflowguidelines.它目前不接受答案。这个问题似乎与aspecificprogrammingproblem,asoftwarealgorithm,orsoftwaretoolsprimarilyusedbyprogrammers无关.如果您认为该问题将成为anotherStackExchangesite上的主题,您可以发表评论,说明在哪里可以回答问题。关闭12个月前。Improvethisquestion我有这样的行,我想知道我实际上有多少行......09:16:39AMall2.000.004.000.000.000.000.000.