स्क्रिप्ट शुरू नहीं कर सकता


0
#!/bin/bash
value=$(<man.txt)
echo "$value"

if [ "$value" == "true" ]; then
    echo "startedif_manthan"
      ps -ef|grep sym |awk '{ print $2 }'|sudo  xargs kill -9;
      sleep 30;
    sudo sh /var/www/symmetric-ds-3.1.6/bin/sym --port 8082 --server;
fi

नमस्ते वहाँ, मैं इस स्क्रिप्ट को एक प्रक्रिया को मार रहा हूं और कुछ समय में स्क्रिप्ट को फिर से शुरू करता हूं। यह सामान्य रूप से स्क्रिप्ट को मार रहा है लेकिन पुनरारंभ स्क्रिप्ट (sudo sh /var/www/symmetric-ds-3.1.6/bin/sym --port 8082 --server) ठीक से नहीं चल रही है। जब मैं स्क्रिप्ट को मैन्युअल रूप से चलाता हूं तो यह समस्याएं भी दे रहा है। मुझे नहीं पता कि यह एक शेल स्क्रिप्ट है या नहीं। लेकिन जब मैंने स्क्रिप्ट स्थान पर मैन्युअल रूप से जाने और इस कमांड को निष्पादित करने का प्रयास किया ।/sym --port 8082 --server स्क्रिप्ट सामान्य रूप से चल रही है।

कोई सुझाव?

जवाबों:


0

मैं जो देखता हूं, उसके आधार पर, प्रक्रिया सूची मिलान कमांड grepपैटर्न मैच कर रहा है और आगे निष्पादन को रोकने के लिए मारने जा रहा है । एक त्वरित हैक खुद को खोज परिणामों से हटाने के लिए होगा:

ps -ef|grep sym | grep -v grep| awk '{ print $2 }'|sudo  xargs kill -9;

एक बेहतर तरीका यह होगा कि आप उन पर पढ़ें pgrep/ pkillउपयोग करें। :)


मुझे यह मिल गया, bcoz स्क्रिप्ट खुद को मारने के लिए पैटर्न से मेल
खा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.