Articles of 命令行界面

运行没有空格的命令

我不会让你知道细节,但是我需要传递一个命令给一个没有空格的文件,每个空格都认为下一个文本是一个variables,而不是这种情况。 我需要能够创build一个命令与空间以外的其他字符或使用hex字符来克服这一点。 不幸的是,我完全locking使用这种方法,因为这个文件存在于1000个设备上,我需要在每个设备上手动更改文件,如果我可以解决这个问题,那么这对我来说是最好的解决scheme。 有没有人有任何想法,如果这是可能的? 编辑嗨大家了解一些更多的信息,可以说我有文件test.sh,它有一个叫做echo_var的函数,如果我使用命令的例子 test.sh echo_var helloworld 该函数将简单地回声helloworld 如果我说使用命令 test.sh echo_var hello world 只有hello得到回应,因为它认为“hello world”是两个string,只确认第一个,函数将每个分隔的string作为一个variables,只使用第一个variables,即hello。 我需要让你好世界一个variables 我想运行的命令是重新启动服务即 test.sh echo_var hello&&service apache2 restart 所以你好都会被回显,服务重新启动。 但是在空间服务之后,命令被切断。 这里是我必须与之交互的文件(test.sh),这是在1000个设备上,我需要使用它: case "$1" in echo_var) echo "$2" ;;

httpd在bash中作为第二个命令重新加载失败

我试图运行一个命令,执行一个动作,更新证书,然后重新加载Apache。 要做到这一点,我运行以下: sudo /home/ec2-user/letsencrypt/letsencrypt-auto –config /home/ec2-user/letsencrypt/cert.ini certonly –debug && service httpd reload 这给了我以下内容: Updating letsencrypt and virtual environment dependencies…… Requesting root privileges to run with virtualenv: /root/.local/share/letsencrypt/bin/letsencrypt –config /home/ec2-user/letsencrypt/secure_textinconfidence_com.ini certonly –debug Version: 1.1-20080819 Version: 1.1-20080819 IMPORTANT NOTES: – Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/secure.textinconfidence.com/fullchain.pem. Your cert will expire on 2016-05-03. To […]

每天在屏幕上自动重启命令行进程

我有一个队列脚本,每秒从数据库中find新的作业,并处理它们。 有时在10个小时内什么都不做,有时在3分钟内就能得到1000个新的工作。 队列工作正常,主要是。 它需要重新启动。 (我不完全确定为什么,我认为其他服务的工作是不喜欢连接打开很长时间,重新启动队列,重置所有连接,也许这不是原因)。有时候,队列脚本只是死。 也许记忆错误,我不能指出它。 有两种方式重新启动,我都很好,(但它必须是自动的): 每24小时显式重启一次: ctrl C + ./queue.sh 等到它死了,然后重新开始 我不确定…队列在screen运行,所以我可以按照输出时,我想。 一个命令如何能够监听另一个命令来完成并重启它,而不是一个守护进程? 我无法安装任何东西。 这是一个糟糕的Redhat服务器,我没有像样的pipe理员访问。 我曾经想过创build一个每24小时发生一次的cronjob,并在24小时后自行终止,但这听起来很错误……我不能使用cronjob作为队列,因为新任务必须立即执行。

更新虚拟主机上的PHP命令

我试图在服务器上安装php应用程序,使用php composer.phar install 。 起初所有的缝合都很好,除了它说php的版本低。 一个快速的php -v告诉我们,运行cli php命令的php版本是4.4.9 。 经过一些试验和错误,我设法find另一个命令php7 -v是PHP版本7.0.6 。 所以我尝试了php7 composer.phar install它看起来不错,但它接缝,它称为一些其他的PHP脚本(用于build立PHP自动加载器,Symfony使用)与原始的PHPfunction(这是4.4.9) 。 有没有办法覆盖的PHP函数总是使用php7,而在命令行? 如果这有帮助,就我所知, php7是/usr/local/bin/php7.0.6-cli的快捷方式 注意:我可以使用SSH连接到服务器,但由于这是一个正常的网站主机,我没有root / sudo访问权限。

为什么Apache可以运行一个命令而root不能?

我有一个由Apache运行的服务器端脚本,以www-data运行。 远程调用时,脚本在服务器上运行正常( http://example.com/script.sh )。 我试图在同一台服务器上运行与root相同的脚本,模拟www-data 。 它不,即使是su www-data -c 'id' runuser -l www-data -c 'id' su www-data -c 'id'或runuser -l www-data -c 'id'失败 This account is currently not available. 2016 Nov 4 09:45:54 eu1 Attempted login by root on /dev/pts/0 这个帐户确实被locking在交互式login(这是正常的): # grep www-data /etc/shadow www-data:*:15246:0:99999:7::: # grep www-data /etc/passwd www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin 由于Apache设法运行一些www-data所以root应该能够做到这一点。 怎么做?

用一行输出解压档案?

我想知道是否有一种方法来解压缩文件,通过在shell中“解压缩”,而只有当前文件输出,而不是完全沉默“-q”或日益增长的列表,减慢了进程esp。 通过SSH并填写您的控制台窗口。 还是至less有另一种方式来看到进步,而不是输出每一个path?

有没有一种方法可以使我们networking的ACL更容易连接?

在工作中,我们经常不得不改变我们的访问控制列表(Access Control List,ACL),以阻止任何有安全违规的计算机,直到我们能够解决问题。 目前我们使用安装在主networking交换机上的计算机。 我们删除旧的列表(命令“no access-list 101”),并将新的修改后的ACL复制并粘贴到交换机的命令行中,我们一次完成40个左右的允许/允许ip命令。我们可以告诉交换机允许/允许特定的IP,而不是删除原来的,粘贴在新的?编辑:我们使用的交换机是由品牌思科,不知道模型

命令行中的Python脚本命令(CTRL + C除外)

我有一个Python脚本,在命令行中运行。 在某些机器上(也许Linux,我不知道),我可以通过键入CTRL + C来终止服务。 但是,我不能在我的Windows XP机器上做到这一点。 有没有我可以尝试的Python脚本终结者?

为什么垃圾邮件不断让我0/0,当我testing它?

在我的centos 5我已经安装了spamassassin,我想要执行它从PHP使用命令行客户端。 问题是,每次我运行它,我得到的结果是: 0/0 这里是我如何运行它 echo "VIAGRA" | /usr/bin/spamc -c -F spamassasin.conf 这是我的configuration文件 # SpamAssassin config file for version 3.x # NOTE: NOT COMPATIBLE WITH VERSIONS 2.5 or 2.6 # See http://www.yrex.com/spam/spamconfig25.php for earlier versions # Generated by http://www.yrex.com/spam/spamconfig.php (version 1.50) # How many hits before a message is considered spam. required_score 7.5 # Encapsulate […]

在Windows CMD,我怎样才能得到完整的path名正在运行的任务列表?

我知道TaskList命令显示当前正在运行的任务,但不显示完整的path名。 有没有办法做到这一点?