1. 程式人生 > >linux 批量結束後臺程序

linux 批量結束後臺程序


本指令碼可以批量結束通過ctrl+z放到後臺的程序

原因我就不多說了,咱們直接寫指令碼

首先,先建立一個.sh命名的指令碼,我放到了/usr/bin 目錄下

[[email protected] ~]# vim /usr/bin/sha.sh

指令碼內容如下:

#!/bin/bash
num=`jobs | wc -l`
if [ $num -eq 0 ];then
    echo "沒有後臺程序"
else
    for i in `jobs | sed -r '[email protected]^\[([[:digit:]]+)\].*@\[email protected]
'` do kill -9 %$i &> /dev/null done sleep 1 jobs &> /dev/null fi


大家可以通過bash 執行一下,是不是發現有點不正確,沒錯,就是不正確,因為用bash執行時是在該shell程序開了一個子執行緒,當然不正確了,我們可以通過 . /usr/bin/sha.sh 來執行

因此,我們可以通過定義一個別名快速的,方便的結束後臺

可以編輯 /etv/bashrc 檔案進行全域性定義,這樣下一次開機也就可以直接用別名結束後臺程序

[[email protected] ~]# echo "alias sha='. /usr/bin/sha.sh'" >> /etc/bashrc

也可以直接編輯 /etc/bashrc 檔案,在尾部新增 

alias sha='. /usr/bin/sha.sh'

然後儲存檔案

最後讀取一下bashrc檔案  . /etc/bashrc  或 source /etc/bashrc 就可以直接用了

檢視命令別名:

blob.png

實驗結果

blob.png

成功殺死所有後臺程序

相關推薦

linux 批量結束後臺程序

本指令碼可以批量結束通過ctrl+z放到後臺的程序 原因我就不多說了,咱們直接寫指令碼 首先,先建立一個.sh命名的指令碼,我放到了/usr/bin 目錄下 [[email protected] ~]# vim /usr/bin/sha.sh 指令碼內容如

Linux 執行jar ,後臺程序執行jar 和結束後臺正在執行的jar

最近搞了一個java UDP Socket,先是在win下寫,後來老大讓在linux下執行,%&656¥5&*……%&……¥7* /**********吐槽結束,開始正文****************/ 1.首先win下的java執行怎樣在linux shell 裡

Linux 下在後臺執行程序

ssh 登入了遠端伺服器時,如果在前臺執行耗時較長的任務, 當 ssh 掉線或關閉視窗時會導致命令停止執行。 hup 與 nohup 當用戶登出(logout)或者網路斷開時,終端會收到 HUP(hangup)訊號從而關閉其所有子程序。有兩種解決辦法 讓程序

linux 透明巨頁khugepaged 後臺程序分析

簡介: 透明巨頁Transparent Hugepage 可以代替以前的hugetlbfs方式。 相關說明可以參考核心Documentation\vm\transhuge.txt文件。 khugepaged : khugepaged 是透明巨頁的守護程序,它的主要功能是定時喚醒,根

Linux啟動與程序:前臺程序後臺程序

作業系統中,前臺程序和後臺程序有什麼區別?特徵是什麼? 後臺程式基本上不和使用者互動,優先級別稍微低一點 前臺的程式和使用者互動,需要較高的響應速度,優先級別稍微高一點 直接從後臺手工啟動一個程序用得比較少一些,除非是該程序甚為耗時,且使用者也不急著需要結果的時候。假

Linux後臺程序管理以及ctrl+z(掛起)、ctrl+c(中斷)、ctrl+\(退出)和ctrl+d(EOF)的區別

轉自:http://blog.csdn.net/fengyifei11228/article/details/5737371             http://idas643.blog.163.com/blog/static/1671048382013414938465

linux 後臺程序的幾種方式

轉載自:https://www.ibm.com/developerworks/cn/linux/l-cn-nohup/我們經常會碰到這樣的問題,用 telnet/ssh 登入了遠端的 Linux 伺服器,運行了一些耗時較長的任務, 結果卻由於網路的不穩定導致任務中途失敗。如何

linux 中的 nohup 命令(設定後臺程序): nohup: ignoring input and appending output to ‘nohup.out’

一、Linux 下使用 nohup Unix/Linux下一般比如想讓某個程式在後臺執行,很多都是使用 & 在程式結尾來讓程式自動執行。 比如我們要執行weblogic在後臺: ./startWebLogic.sh & 但是加入我們很多程式並不象webl

Linux後臺程序的掛載與解除安裝

利用putty等shell軟體開啟一個Linux程序,如果我想我關閉掉putty等ssh shell終端之後,其繼續執行,就會產生一種煩惱。比如像php的伺服器等,如果你關閉一個ssh shell終端之後Sessions連線,這個Linux進行會同時被關閉,好像Linux被

linux在如何讓程序後臺執行

今天碰到這麼一個問題,使用ssh客戶端登陸了linux伺服器,啟動並執行服務之後如果關閉客戶端與伺服器的連線,這個時候運行於伺服器上的服務也會被關閉,如何讓命令提交之後不受本地關閉終端埠的影響呢? 首先我們要知道為啥客戶端的斷開會影響服務端程式的執行? 當用戶登出或

linux結束指定名稱的所有程序

1.kill -9 `ps -ef| grep ./videohandle| awk '{print $2}'` 功能:結束名為./videohandle的所有程序 注意外層是esc鍵下面那個頓號,內層是單引號 2.ps -ef |grep -v grep |grep

Linux 技巧:讓程序後臺可靠執行的幾種方法

我們經常會碰到這樣的問題,用 telnet/ssh 登入了遠端的 Linux 伺服器,運行了一些耗時較長的任務, 結果卻由於網路的不穩定導致任務中途失敗。如何讓命令提交後不受本地關閉終端視窗/網路斷開連線的干擾呢?下面舉了一些例子, 您可以針對不同的場景選擇不同的方式來處理這

linux shell 實現後臺程序執行的,開始和終止

linux shell 實現後臺開始,和停止多程序  知識點: xxxxcmd.sh  & //後臺執行程式 echo $!  // 列印上一次後臺執行程式的程序pid 實現: //start.sh  //開始10個程序 #!/bin/bash ./do10.s

Linux 中的普通程序後臺程序、守護程序

1、預設情況下,程序是在前臺執行的,這時就把 shell 給佔據了,我們再無法使用終端進行其它操作。2、對於沒有互動的程序,我們希望將其在後臺啟動,可以在命令的末尾加一個 “&” 字元實現這個目的。切換到後臺的程序稱為job。切換到後臺時會輸出相關 job 資訊,以輸

Linux 技巧:讓程序後臺可靠執行的幾種方法&CentOS 7通過Firewall開放防火牆埠

一.讓程序在後臺可靠執行的幾種方法 方法1 #nohup  【命令】 & 例: [[email protected] ~]# nohup ping www.ibm.com & 方法2 # (【命令】 &) 例:  # (ping www.i

Linux後臺程序管理

fg、bg、jobs、&、ctrl + z命令一、 &加在一個命令的最後,可以把這個命令放到後臺執行 ,如gftp &,二、ctrl + z可以將一個正在前臺執行的命令放到後臺,並且處於暫停狀態,不可執行  三、jobs檢視當前有多少在後臺執行的命令j

Macbook怎麽強制關閉後臺程序?Macbook強制關閉後臺程序的方法

killall 紅色 -i www 關於 light cbo 圖標 終端 有時候我們的Macbook電腦運行某個程序卡在那裏耗了很長時間,程序本身有可能提供了取消按鈕,點了也沒有反應,這時候我們就很想強制關閉它了,那麽Macbook怎麽強制關閉後臺運行的程序呢?下面完美小編

【2017-06-20】Linux應用開發工程師C/C++面試問題之一:Linux多線程程序的同步問題

依次 其它 如果 開發工程師 logs 特殊 另一個 特殊情況 發生 參考之一:Linux 線程同步的三種方法 鏈接地址:http://www.cnblogs.com/eleclsc/p/5838790.html 簡要回答: Linux下線程同步最常用的三種方法就是互斥鎖、

Linux設備驅動程序(一)設備驅動程序簡介

包括 收集 字符設備 調度器 計算機 啟動 驅動程序 str 單個 機制or策略: 驅動提供機制(what),而不是提供策略(how); 內核功能劃分: 根據內核完成任務的不同,可分為如下幾個部分: 1. 進程管理 負責進程的的創建和銷毀,並

linux批量復制文件到多臺服務器腳本

shell腳本=======================xsync.sh======================================#!/bin/bashif [[ $# -lt 1 ]] ; then echo no params ; exit ; fip=$1#echo p=$pdir