Articles of bash

检查进程是否正在运行的脚本,如果没有运行,则执行一行代码

我如何创build一个脚本来检查一个进程是否正在运行,当它没有运行的时候执行一行代码? 让脚本每分钟检查一次? 我正在想这样的事情: #! /bin/bash case "$(pidof Program.exe | wc -w)" in 0) echo "Restarting Program: $(date)" >> /var/log/ProgramLog.txt (mono-runtime Program.exe -option1 yes -option2 no -option3 6; 1) & ;; 1) # all ok ;; *) echo "Removed double Program: $(date)" >> /var/log/ProgramLog.txt kill $(pidof Program.exe | awk '{print $1}') ;; esac 0:如果找不到进程执行代码 1:如果发现进程什么都不做 *:如果有超过1个进程发现停止最后一个 […]

BASH将文本文件逐行转换为variables

我想为多分区系统自动设置一个脚本。 第一个行动是 lspci | grep -i 'vga\|graphic' | cut -b 1-7 > text.txt 现在我想把文件的两行变成variables。 我的低调解决scheme是这样的: VAR1=$(head -n 1 text.txt) VAR2=$(tail -n 1 text.txt) 它也可以,但是,可能有更好的解决scheme,将文本文件逐行转换为variables。

需要帮助修剪文件名称文本

我有一个具有300个文件的目录,命名约定如下: file.pdf_error 我需要删除文件的_error部分。 我试过了 rename 's/pdf_error/pdf/' *pdf_error 但是这个命令什么都不做。 请协助?

Bash – 从脚本中获取未知量的参数

我正在试图为我的Minecraft服务器,基本上它在聊天中查找某个单词,然后回应。 这是我有的代码: echo [INFO] Started while true; do tail -n 1 logs/latest.log > lookin.txt if grep -q ".df" lookin.txt then echo [$(date +'%r')][CMD] Toggledownfall echo ' ' > lookin.txt screen -S mc -X eval 'stuff "toggledownfall\015"' sleep 0.1 fi if grep -q '.day' lookin.txt then echo [$(date +'%r')][CMD] Time set day echo ' ' > […]

在服务器启动时运行shell脚本运行多个服务器(CentOS 7)

嗨,我第一次尝试运行init脚本。 我正在使用chkconfig运行位于/etc/init.d/serverstartup中的脚本文件。 我已经在level& 016上设置了2345 ,并在脚本中添加了#chkconfig:2345 99 01 。 我的脚本启动3节点服​​务器,但我得到ERRORbind EADDRINUSE虽然我重新启动我的服务器,如果我杀了一个服务器重新启动,越来越多的实例开始运行。 我究竟做错了什么 ?

pidof -x $ 0返回2,而不是预期的1,是否有单行select?

在一个bash脚本中,我试图用下面一行来判断另一个进程是否正在执行当前脚本: /sbin/pidof -x $0 |wc -w 但是响应总是2,而不是1的预期值。 我已经尝试了以下调用: /sbin/pidof -x $0返回1个PID /sbin/pidof -x $0 |wc -w返回2 /sbin/pidof -x $0 |head返回2个pid /sbin/pidof -x $0 |head |wc -w返回2 /sbin/pidof -x $0 |head |tail返回2个pid /sbin/pidof -x $0 |head |tail |wc -w返回2 任何人都可以提出一个替代(或修复),以实现我想要做的,并解释为什么pipe道输出任何东西导致pidof输出“有点搞笑”? 这是脚本目前使用pidof,它工作正常: RUNNING=`/sbin/pidof -x $0` RUNNING=`echo -n ${RUNNING} | wc -w` [[ ${RUNNING} -gt 1 ]] && […]

“useradd -r -d / opt / otrs / -c”OTRS用户“otrs”和“usermod -G nogroup otrs www-data”是什么OS X等价物?

我正试图在Mac上安装otrs 。 我想知道什么是以下命令的OS X等价物? useradd -r -d /opt/otrs/ -c 'OTRS user' otrs usermod -G nogroup otrs www-data

Bash命令用于在ubuntu的目录中查找具有特定文件types的所有文件的大小

我有一个文件夹包含几个文件types说.html,.php,.txt等..它也有子文件夹.Sub文件夹可能包含上述所有文件types。 问题1 : – 我想find所有文件types为“.html”的文件的大小,这些文件在根目录和子目录中 问题2 :我想find所有文件types为“.html”的文件的大小,这些文件只在根目录下,而不在子文件夹中。 我通过互联网冲浪,但我所能得到的是像df -h,du-sh等命令。 上述问题有没有bash命令? 任何bash脚本?

如何从一个简单的CGI python服务器运行一个shell脚本?

我有一个非常简单的CGI python服务器在Linux上与下面的代码: #!/usr/bin/env python import BaseHTTPServer import CGIHTTPServer import cgitb; cgitb.enable() ## This line enables CGI error reporting server = BaseHTTPServer.HTTPServer handler = CGIHTTPServer.CGIHTTPRequestHandler server_address = ("", 8000) handler.cgi_directories = ["/"] httpd = server(server_address, handler) httpd.serve_forever() 在同一个目录中,我有一个名为example-bash.sh的脚本。 当我导航到localhost:8000 / example-bash.sh时,我想要做的只是能够在浏览器中显示该bash脚本的输出。 当我尝试时,它只是打开文件,而不是运行它。 example-bash只是有以下代码: #!/bin/bash echo "Content-type: text/html" echo '' echo 'CGI Bash Example' 我怎样才能让它运行?

BASH后台进程打印消失提示行

我有一个运行在bg上的BASH脚本,并根据系统事件向用户输出消息。 我的问题是,这些消息的回声后,用户需要按ENTER键以回到提示行。 在打印的消息中添加新行并没有帮助,因为它仍然来自bg而不是来自用户shell。 有没有人有一个优雅和简单的解决scheme,让用户回到提示行? 我会感激这里的任何帮助..