Linuxのプロセスリストからスクリプトを隠す方法は?

Linuxのプロセスリストからスクリプトを隠す方法は?

Linuxにスクリプトがあります。

#!/bin/bash
export DISPLAY=:1
value=$(</home/pace/Desktop/BODVersion.txt)
cd $value
gnome-terminal \
        --tab -t "CTCLManager" -e " sh -c 'sleep 1s; ./startapp CTCLManager' "\
        --tab -t "SMM" -e " sh -c 'sleep 10s; ./startapp SMM' "\
        --tab -t "ClientCommunicator" -e " sh -c 'sleep 20s; ./startapp ClientCommunicator' "\
        --tab -t "GATS" -e " sh -c 'sleep 30s; ./startapp GATS' "\

私の問題は、サーバー(GUI)でこのスクリプトを実行し、wCLIで同じサーバーにコマンドを実行すると、次の出力が表示されることです。

[root@demo ~]# w
 12:23:27 up  8:22, 10 users,  load average: 4.12, 2.92, 1.75
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.0.100   11:43    0.00s  0.00s  0.00s w
pace     pts/1    :1               12:16    6:39   2.38s  0.00s sh -c sleep 1s; ./startapp CTCLManager
pace     pts/2    :1               12:16    6:39   0.05s  0.00s sh -c sleep 10s; ./startapp SMM
pace     pts/3    :1               12:16    6:39   0.20s  0.00s sh -c sleep 20s; ./startapp ClientCommunicator
pace     pts/5    :1               12:16    6:39  12:52   0.00s sh -c sleep 30s; ./startapp GATS
[root@demo ~]#

私はこれをに表示したくありませんw。の出力から私のスクリプトを隠すのに役立ちますw

ベストアンサー1

簡単なスクリプトを考えてみましょう:

[09:37] [vhost0 ~] # cat script.sh
echo "sleeping..."; sleep 100.

実行して2番目の端末を確認すると、次のように表示されます。

[09:37] [vhost0 ~] # w
 09:36:42 up 17:20,  2 users,  load average: 0.06, 0.03, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.56.1     Wed20    2.00s  0.07s  0.00s sleep 100
root     pts/1    192.168.56.1     09:08    0.00s  0.09s  0.01s w

ただし、スクリプトを変更します。

[09:40] [vhost0 ~] # cat script.sh
secretcommand() { echo "sleeping..."; sleep 100; }

echo SECRET | secretcommand

調べるw...

[09:36] [vhost0 ~] # w
 09:40:40 up 17:24,  3 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.56.1     Wed20    8.00s  0.10s  0.00s bash script.sh
root     pts/1    192.168.56.1     09:08    0.00s  0.09s  0.00s w

もちろん、私たちがあなたの存在を完全に隠したという意味ではありませんが、まだ両親にはあなたの汚い秘密を保持していました;)

UPD

更新されたスクリプトは次のとおりです。

#!/bin/bash
export DISPLAY=:1
value=$(</home/pace/Desktop/BODVersion.txt)
cd $value
secretcommand() {
        gnome-terminal \
                --tab -t "CTCLManager" -e " sh -c 'sleep 1s; ./startapp CTCLManager' "\
                --tab -t "SMM" -e " sh -c 'sleep 10s; ./startapp SMM' "\
                --tab -t "ClientCommunicator" -e " sh -c 'sleep 20s; ./startapp ClientCommunicator' "\
                --tab -t "GATS" -e " sh -c 'sleep 30s; ./startapp GATS' "\;
}

echo SECRET | secretcommand

おすすめ記事