網路開展事業或在網路創業賺錢的第一步:【架設24小時賺錢網站主機】比網頁設計更優先!

感謝您造訪 Linux主機伺服器架設技術基地。 你可進入替你架設主機.影片教你維護頁面,詳細瞭解Linux主機架設及相關技術維護影片教學(完整配套措施),有主機馬上可以架設網站營運,完全無限制!

租用不如自有主機!聰明的網站經營者都選擇架設Linux主機伺服器做為網站運作平台,因功能完整又強大,免費架站程式超多!完全沒有版權問題,超強『防駭客攻擊與入侵』及安全防護可以讓你無後顧之憂。

                    架設主機.影片教你維護: http://por.tw/linux/new-E_learning/index.php

Linux主機伺服器架設技術基地  維護團隊  敬上
瀏覽模式: 普通 | 列表

Linux主機伺服器為何需要防火牆?

Linux主機伺服器為何需要防火牆?

Linux主機伺服器防火牆防火牆最重要的任務:
1.規劃出切割被信任(如子網域)與不被信任(如 Internet)的網段
2.規劃出可提供 Internet 的服務與必須受保護的服務
3.分析出可接受與不可接受的封包狀態

畢竟網路的世界是很複雜的,而 Linux 主機也不是一個簡單的東西。
說不定哪一天你在進行某個軟體的測試時,主機突然間就啟動了一個網路服務, 如果你沒有管制該服務的使用範圍,那麼該服務就等於對所有 Internet 開放,那就麻煩了!
因為該服務可能可以允許任何人登入你的系統,那不是挺危險?

所以囉,防火牆能作什麼呢?防火牆最大的功能就是幫助你『限制某些服務的存取來源』!
舉例來說:
(1)你可以限制檔案傳輸服務 (FTP) 只在子網域內的主機才能夠使用,而不對整個 Internet 開放。
(2)你可以限制整部 Linux 主機僅可以接受客戶端的 WWW 要求,其他的服務都關閉。
(3)你還可以限制整部主機僅能主動對外連線,對我們主機主動連線的封包狀態 (TCP 封包的 SYN flag) 就予以抵擋等等。
這些就是Linux主機最主要的防火牆功能!

主機架設方案,所配送的電腦耗電量一年約花費多少成本?

 學員來信問道:
老師您好:
請問您的主機架設方案,所配送的電腦耗電量一年約花費多少成本?(因為我擔心電費問題....)
謝謝!


總教頭回覆:
我的經驗:架設主機後網站掛上Google點擊廣告
結果賺的錢用來付給:家裡的上網費、電費、水費、瓦斯費、大樓管理費、電話費....全部不用錢,還有賺!
所以你不用為『電腦耗電量一年約花費』多少成本煩惱!

總教頭架設之Linux主機,用儀器實際測量數據證明:用電54瓦(超省電!)
比一個100瓦家用燈泡省約一半!比各位一般300瓦的PC電腦省電多多!

attachments/201104/6584384162.jpg

結論:單單上網不架設主機的人是笨蛋!(因為不管你有沒有架設主機,上網費用都是一樣的!)
你現在知道為何要聘請專家幫你架設主機了吧?
架設一台可以賺錢(高效能、不耗電)的主機,要有多方的專要考量

一台Linux主機營運幾年下來,那成本可差大了!
所以勸告網友與學員(不要自己DIY)可以用與高效能是不一樣的!
備註:網友與學員不要寫信來問我如何省電與硬體配備規格!(別想來個撿現成的!)

需要架設主機服務,就是讓專業者整體規劃!

Linux Server主機與主機的移轉

Linux Server主機與主機的移轉

本文主要在介紹如何把 Linux 上的資料,含使用者帳號、網頁、資料庫移轉至另一台 Linux Server 上頭。
Linux主機的移轉要掌握以下幾點原則:
要注意原網頁應用軟體之安全性
有些舊的軟體,可能已有漏洞,不要再把舊的版本轉移過來。
在移轉資料的同時,必須要注意,該資料的檔案權限。不要在完成資料移轉之後,一般 user 都「看」不到,只剩 root 一個才看得到。
可在兩台 Linux 之間直接使用 gFtp 軟體,以 SFTP2 (SSH2) 協定、 Root 身份,直接把各種資料從舊機器傳送到新機器上。

Linux主機的MySQL資料庫移轉:
資料庫位置:/var/lib/mysql
/var/lib/mysql/mysql 及 /var/lib/mysql/test 不可搬動
除了上述這兩個資料夾不可搬動外,其餘在 /var/lib/mysql/ 底下的資料夾(資料庫),皆可以搬到新 Linux Server主機的 /var/lib/mysql 底下。
因為 /var/lib/mysql/mysql 是 MySQL 的系統資料庫,它記錄了許許多多 MySQL Server 的設定參數。而且,舊版的 MySQL 與新版的 MySQL ,系統資料庫會有欄位定義上的不同,若您把舊版系統資料庫,直接覆蓋到新版之上,可能會造成 MySQL 啟動失敗。
例外:若是新舊主機的 Linux/LinuxD Server 版本一致,理論上其 MySQL 版本應該也一致,就可以執行以下動作即可
直接把 /var/lib/mysql/ 底下所有資料夾複製到新主機上相同的位置上
不必再動 MySQL 使用者權限的部份
複製到新主機時,要記得把 /var/lib/mysql 底下所有的資料夾(資料庫)權限,改為 mysql.mysql
root@dns:~# chown -R mysql.mysql /var/lib/mysql/*
在 LinuxD 底下可以使用 filezilla 以 SFTP 的協定,直接用 Root 身份進行搬動
root@dns:~# apt-get install filezilla
檢查所有 PHP+MySQL程式碼(如 ANN 公告欄...etc),把所使用到的 MySQL 使用者帳號密碼,新增至新主機的 MySQL 內
使用 phpmyadmin,例: http://Your.ServerName/phpmyadmin
在首頁上點:「權限」 → 「新增使用者」 (新增 MySQL 的使用者)

用SCP(連接埠:22)連線Linux主機的軟體-WinSCP 4.2.9 免安裝中文版

用SCP(連接埠:22)連線Linux主機的軟體-WinSCP 4.2.9 免安裝中文版

WinSCP 4.2.9 免安裝中文版是用SCP(連接埠:22)連線Linux主機的好軟體。
當然Linux主機的防火牆(鎖IP)要設定開通同意連線的IP
剩餘的其他IP都檔掉,讓其他IP都無法連線這樣才安全!
另外如果再次安裝:LINUX連接控制執行PuTTY,那就更方便了!可以直接在遠端執行Linux命令語法。
不用一定要在主機下才能修改設定,達到遠端維護的標的!
WinSCP是支援SFTP(SSH-1、SSH-2)、SCP通訊協定的免費FTP用戶端,是開放原始碼的自由軟體。

WinSCP特色:

* 圖形使用者介面
* 多國語言介面(正體中文已由 Makr Lin 和 Hong-Yi Chen 100% 翻譯完成,歡迎享用囉!)
* Windows整合 (拖放檔案、通訊協定登記、捷徑)
* 所有普通的檔案操作功能
* 支援 SSH-1 和 SSH-2 上的SFTP 與 SCP 通訊協定
* 批次指令檔的scripting 與命令列介面
* 用許多不同的方式同步目錄
* 內建文字編輯器
* 支援 SSH 密碼、鍵盤互動、公開金鑰與 Kerberos (GSS) 認證方式
* 內建 Pageant (PuTTY Agent) 完整支援公開金鑰認證法
* 檔案總管管理介面與諾頓指揮官管理介面兩種操作介面.
* 可選擇儲存期間資料
* 可選擇支援獨立運作將登錄資料存在一設定檔上,適合在隨身媒體上使用

attachments/201009/7193388399.png

WinSCP is an open source free SFTP client and FTP client for Windows.
Legacy SCP protocol is also supported.
Its main function is safe copying of files between a local and a remote computer.

Features:
* Graphical user interface
* Translated into several languages
* Integration with Windows (drag&drop, URL, shortcut icons)
* U3 support
* All common operations with files
* Support for SFTP and SCP protocols over SSH-1 and SSH-2 and plain old FTP protocol
* Batch file scripting and command-line interface
* Directory synchronization in several semi or fully automatic ways
* Integrated text editor
* Support for SSH password, keyboard-interactive, public key and Kerberos (GSS) authentication
* Integrates with Pageant (PuTTY authentication agent) for full support of public key authentication with SSH
* Windows Explorer-like and Norton Commander-like interfaces
* Optionally stores session information
* Optionally supports standalone operation using a configuration file in place of registry entries, suitable for operation from removable media


用SCP(連接埠:22)連線Linux主機的軟體-WinSCP 4.2.9 免安裝中文版下載之檔案位址:
 
  http://por.tw/Downloads/WinSCP_4.2.9.rar

基於安全考量Xoops2.5.0安裝好後出現警告提示的訊息(如何處理?)

基於安全考量Xoops2.5.0安裝好後出現警告提示的訊息(如何處理?)

基於安全考量Xoops2.5.0安裝好後出現了以下的訊息

警告提示:基於安全考量,建議將 /var/www/xoops_lib 這個資料夾移到網站根目錄之外!

警告提示:基於安全考量,建議將 /var/www/_xoops_data_ 這個資料夾移到網站根目錄之外!

處理方式與解決方法:
例如Linux主機網站路徑是:/var/www
那就把那兩個目錄移到/var
不移的話至少要改資料夾名稱,不過建議移會比較好!
如何能把xoops_data 移到別的資料夾

attachments/201011/4016146391.jpg

移動後

請修改xoops目錄下的 mainfile.php

修改 移動後的路徑

define('XOOPS_PATH', 'C:/AppServ/www/xoops/xoops_lib');

define('XOOPS_VAR_PATH', 'C:/AppServ/www/xoops/xoops_data');

還要把移動的目錄確認一下它的『可讀可寫』屬性修改正確!
此一變動對網站安全是重大革新的作法,但是對於租用虛擬主機的用戶,就要依賴主機業者的協助
萬一主機業者是國外或是根本無此服務呢?
結論:這就是自己有獨立主機與租用虛擬主機使用上最大的區別
(租人家的主機你有何主權獨立檔案、資料庫隱私可言?)

Linux 下通過腳本實現遠端自動備份

Linux 下通過腳本實現遠端自動備份

考慮到在本機上備份資料,一旦該機器硬碟出現故障,資料無法取出。遠端手動備份資料費時費力且不及時。最好的方法就是通過腳本實現遠端自動互備。但遠端無論是通過SSH登陸,還是通過scp複製檔案都需要輸入密碼。為了克服這個問題,首先需要實現不需要密碼的SSH登陸,這樣就可以使用rsync,scp,rexec等指令來做的遠端備份了。

1. 設定無需密碼的ssh登陸,方法如下:
假設A,B兩伺服器,現在需要在A機上用root登陸B機,而不需要輸入密碼,那我們可按照下面的步驟來做:
1)在A機上生成鑰匙對,執行以下指令:
ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa
Enter passphrase (empty for no passphrase):直接換行
Enter same passphrase again:直接換行
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
f6:61:a8:27:35:cf:4c:6d:13:22:70:cf:4c:c8:a0:23 root@host1

這樣,在/root/.ssh/路徑下會生成id_rsa,和id_rsa.pub,其中id_rsa是密鑰,id_rsa.pub是公鑰。

2)把在A機生成的id_rsa.pub複製到B機上,假設複製到B機的臨時目錄下,如:
scp /root/.ssh/id_rsa.pub root@218.242.214.20:/tmp
3)用root帳號登陸B機,進入其主目錄,建立authorized_keys檔案,並設定好權限。
cd ~/.ssh
cat /tmp/id_rsa.pub >>authorized_keys
chmod  400 authorized_keys
rm -f /tmp/id_rsa.pub

4)測試
在A機上轉到root帳號,嘗試登入B機。看看是不是不要密碼.
說明:
authorized_keys檔案的權限很重要,如果設定為777,那麼登入的時候,還是需要提供密碼的。
記得將臨時目錄下的id_rsa.pub刪除,養成個好習慣。
本方法在Red Hat9.0上測試通過。


2. 編輯crontab檔案
vi /etc/crontab
如設定每天凌晨3:00執行cron.daily中的腳本:
00 3 * * * root run-parts /etc/cron.daily

3.編輯cron.daily中的腳本
cd /etc/cron.daily/
vi backupdb

pg_dump -U postgres voipack > /voipack.sql
pg_dump -U postgres regserver > /regserver.sql
tar -cvjf /aavm.tgz.bz2 /usr/local/aavm
tar -cvjf /oracle.tgz.bz2 /var/oracle
scp /voipack.sql root@218.242.214.20:/root/218.242.214.23_backup
scp /regserver.sql root@218.242.214.20:/root/218.242.214.23_backup
scp /aavm.tgz.bz2 root@218.242.214.20:/root/218.242.214.23_backup
scp /oracle.tgz.bz2 root@218.242.214.20:/root/218.242.214.23_backup

將23上產生的備份檔案copy到218.242.214.20:/root/218.242.214.23_backup路徑下

同樣的方法可以將假設B伺服器上的資料備份到A伺服器,實現雙機的互備。

linux下shell的工作原理

linux下shell的工作原理

shell是使用者和Linux操作系統之間的介面。Linux中有多種shell,其中預設使用的是Bash。本章講述了shell的工作原理,shell的種類,shell的一般操作及Bash的特性。   shell是使用者和Linux操作系統之間的介面。Linux中有多種shell,其中預設使用的是Bash。本章講述了shell的工作原理,shell的種類,shell的一般操作及Bash的特性。
什麼是shell
Linux系統的shell作為操作系統的外殼,為使用者提供使用操作系統的介面。它是指令語系、指令解釋程式及程式設計語系的統稱。
shell是使用者和Linux內核之間的介面程式,如果把Linux內核想像成一個球體的中心,shell就是圍繞內核的外層。當從shell或其他程式向Linux傳遞指令時,內核會做出相應的反應。
shell是一個指令語系直譯器,它擁有自己內建的shell指令集,shell也能被系統中其他應用程式所呼叫。使用者在提示符下輸入的指令都由shell先解釋然後傳給Linux核心。
有一些指令,比如改變工作目錄指令cd,是包括在shell內定的。還有一些指令,例如複製指令cp和搬移指令rm,是存在於檔案系統中某個目錄下的單獨的程式。對使用者而言,不必關心一個指令是建立在shell內定還是一個單獨的程式。
shell首先檢查指令是否是內定指令,若不是再檢查是否是一個應用程式(這裡的應用程式可以是Linux本身的實用程式,如ls和rm,也可以是購買的商業程式,如xv,或是是自由軟體,如emacs)。然後shell在搜尋路徑裡尋找這些應用程式(搜尋路徑就是一個能找到可執行程式的目錄清單)。如果鍵入的指令不是一個內定指令並且在路徑裡沒有找到這個可執行檔案,將會顯示一條錯誤訊息。如果能夠完成找到指令,該內定指令或應用程式將被分解為系統呼叫並傳給Linux內核。

shell的另一個重要特性是它自身就是一個解釋型的程式設計語系,shell程式設計語系支援絕大多數在進階語系中能見到的程式元素,如函數、變量、陣列和程式控制結構。shell寫程式語系簡單易學,任何在提示符中能鍵入的指令都能放到一個可執行的shell程式中。
當普通使用者完成登入,系統將執行一個稱為shell的程式。正是shell程式提供了指令行提示符。作為預設值(TurboLinux系統預設的shell是BASH),對普通使用者用「$」作提示符,對超級使用者(root)用「#」作提示符。
一旦出現了shell提示符,就可以鍵入指令名稱及指令所需要的參數。shell將執行這些指令。如果一條指令花費了很長的時間來運行,或是在螢幕上產生了大量的輸出,可以從鍵盤上按ctrl+c發出中斷信號來中斷它(在標準結束之前,中止它的執行)。
當使用者準備結束登入對話程式時,可以鍵入logout指令、exit指令或檔案結束符(EOF)(按ctrl+d實現),結束登入。
我們來實習一下shell是如何工作的。
$ make work
make:***No rule to make target 『work』. Stop.
$
注解:make是系統中一個指令的名字,後面跟著指令參數。在接收到這個指令後,shell便執行它。本例中,由於輸入的指令參數不正確,系統返回訊息後停止該指令的執行。
在例子中,shell會尋找名為make的程式,並以work為參數執行它。make是一個經常被用來編譯大程式的程式,它以參數作為目的來進行編譯。在 「make work」中,make編譯的目的是work。因為make找不到以work為名字的目的,它便給出錯誤訊息表示運行失敗,使用者又回到系統提示符下。
另外,使用者鍵入有關指令行後,如果shell找不到以其中的指令名為名字的程式,就會給出錯誤訊息。例如,如果使用者鍵入:
$ myprog
bash:myprog:command not found
$
可以看到,使用者得到了一個沒有找到該指令的錯誤訊息。使用者敲錯指令後,系統一般會給出這樣的錯誤訊息。
shell的種類
Linux中的shell有多種類型,其中最常用的幾種是Bourne shell(sh)、C shell(csh)和Korn shell(ksh)。三種shell各有優缺點。Bourne shell是UNIX最初使用的shell,並且在每種UNIX上都可以使用。Bourne shell在shell寫程式方面相當優秀,但在處理與使用者的互動方面做得不如其他幾種shell。Linux操作系統預設的shell是Bourne Again shell,它是Bourne shell的延伸,簡稱Bash,與Bourne shell完全向後相容,並且在Bourne shell的基礎上增加、增強了很多特性。Bash放在/bin/bash中,它有許多特色,可以提供如指令補全、指令編輯和指令歷史表等功能,它還包括了很多C shell和Korn shell中的優點,有靈活和強大的寫程式介面,同時又有很友好的使用者介面。
C shell是一種比Bourne shell更適於寫程式的shell,它的語法與C語系很相似。 Linux為喜歡使用C shell的人提供了Tcsh。Tcsh是C shell的一個延伸版本。Tcsh內含指令行編輯、可寫程式單詞補全、拼字校正、歷史指令取代、作業控制和類似C語系的語法,它不僅和Bash shell是提示符相容,而且還提供比Bash shell更多的提示符參數。
Korn shell集合了C shell和Bourne shell的優點並且和Bourne shell完全相容。Linux系統提供了pdksh(ksh的延伸),它支援任務控制,可以在指令行上掛起、後台執行、喚醒或終止程式。
Linux並沒有冷落其他shell使用者,還內含了一些流行的shell如ash、zsh等。每個shell都有它的用途,有些shell是有專利的,有些能從Internet網上或其他來源獲得。要決定使用哪個shell,只需讀一下各種shell的聯機說明,並試用一下。
使用者在登入到Linux時由/etc/passwd檔案來決定要使用哪個shell。例如:
# fgrep lisa /etc/passwd
lisa:x:500:500:TurboLinux User:/home/lisa:/bin/bash
shell被列每行的末尾(/bin/bash)。
由於Bash是Linux上預設的shell,本章主要介紹Bash及其關聯知識。
shell指令
指令行c
使用者登入到Linux系統時,可以看到一個shell提示符,標識了指令行的開始。使用者可以在提示符後面輸入任何指令及參數。例如:
$ date
二 11 23 01:34:58 CST 1999
$
使用者登入時,實際進入了shell,它遵循一定的語法將輸入的指令加以解釋並傳給系統。指令行中輸入的第一個字必須是一個指令的名字,第二個字是指令的選項或參數,指令行中的每個字必須由空格或TAB隔開,格式如下:
$ Command Option Arguments
1. 選項和參數
選項是內含一個或多個字母的代碼,它前面有一個減號(減號是必要的,Linux用它來區別選項和參數),選項可用於改變指令執行的動作的類型。例如:
$ ls
motd passwd
$
這是沒有選項的ls指令,可列出現用的目錄中所有檔案,只列出各個檔案的名字,而不顯示其他更多的訊息。
$ ls -l
total 2
-rw-r--r-- 2 wzh book 22 Apr 20 20:37 motd
-rw-r--r-- 2 wzh book 796 Apr 20 20:37 passwd
$
加入-l選項,將會為每個檔案列出一行訊息,諸如資料大小和資料最後被修改的時間。
大多數指令都被設計為可以接納參數。參數是在指令行中的選項之後鍵入的一個或多個單詞,例如:
$ ls -l text
-rw-r--r-- 2 wzh book 22 Apr 20 20:37 motd
-rw-r--r-- 2 wzh book 796 Apr 20 20:37 passwd
$
將顯示text目錄下的所有檔案及其訊息。
有些指令,如ls可以帶參數,而有一些指令可能需要一些最小數目的參數。例如,cp指令至少需要兩個參數,如果參數的數目與指令要求不符,shell將會給出出錯訊息。例如:
$ cp -i mydata newdata
注意:指令行中選項先於參數輸入。
2. 指令行特徵
指令行實際上是可以編輯的一個文字緩沖區,在按換行之前,可以對輸入的文字進行編輯。比如利用BACKSPACE鍵可以刪除剛鍵入的字元,可以進行整行刪除,還可以插入字元,使得使用者在輸入指令,尤其是複雜指令時,若出現鍵入錯誤,無須重新輸入整個指令,只要利用編輯操作,即可改正錯誤。
利用上箭頭可以重新顯示剛執行的指令,利用這一功能可以重複執行以前執行過的指令,而無須重新鍵入該指令。
bash儲存著以前鍵入過的指令的清單,這一清單被稱為指令歷史表。按動上箭頭,便可以在指令行上逐次顯示各條指令。同樣,按動下箭頭可以在指令清單中向下搬移,這樣可以將以前的各條指令顯示在指令行上,使用者可以修改並執行這些指令。這一特徵將在10.4節中進行詳細的論述。
在一個指令行中還可以置入多個指令,用分號將各個指令隔開。例如:
$ ls -F;cp -i mydata newdata
也可以在幾個指令行中輸入一個指令,用反斜槓將一個指令行持續到下一行。
$ cp –i
mydata
newdata

上面的cp指令是在三行中輸入的,開始的兩行以反斜槓結束,把三行作為一個指令行。
shell中的特殊字元
shell中除使用普通字元外,還可以使用一些具有特殊含義和功能的特殊字元。在使用它們時應注意其特殊的含義和作用範圍。下面分別對這些特殊字元加以介紹。
1. 通配符
通配符用於模式符合,如檔名符合、路經名搜尋、字串搜尋等。常用的通配符有*、?和括在方括號〔 〕中的字元序列。使用者可以在作為指令參數的檔名中包括這些通配符,構成一個所謂的「模式串」,在執行過程中進行模式符合。
* 代表任何字串(長度可以不等),例如:「f*」符合以f打頭的任意字串。但應注意,檔名前的圓點(.)和路經名中的斜線(/)必須顯式符合。例如「*」不能符合.file,而「.*」才可以符合.file。
? 代表任何單個字元。
〔〕 代表特殊的一個字元範圍,只要檔名中〔〕位置處的字元在〔〕中特殊的範圍之內,那麼這個檔名就與這個模式串符合。方括號中的字元範圍可以由直接給出的字元組成,也可以由表示限定範圍的起始字元、終止字元及中間的連字元(-)組成。例如,f 〔a- d〕 與f 〔abcd〕的作用相同。Shell將把與指令行中特殊的模式串相符合的所有檔名都作為指令的參數,形成最終的指令,然後再執行這個指令。
下面我們給出表10-1說明這些通配符的具體含義。
表10-1 通配符含義舉例
模式串
意 義
*
現用的目錄下所有檔案的名稱。
*Text*
現用的目錄下所有檔名中包括有Text的檔案的名稱。
〔ab-dm〕*
現用的目錄下所有以a、b、c、d、m開頭的檔案的名稱。
〔ab-dm〕?
現用的目錄下所有以a、b、c、d、m開頭且後面只跟有一個字元的檔案的名稱。
/usr/bin/??
目錄/usr/bin下所有名稱為兩個字元的檔案的名稱。
特別需要注意的是,連字元「-」僅在方括號內有效,表示字元範圍,如在方括號外面就成為普通字元了。而*和?只在方括號外面是通配符,若出現在方括號之內,它們也失去通配符的能力,成為普通字元了。例如,模式「- a〔*?〕abc」中只有一對方括號是通配符,*和?均為普通字元,因此,它符合的字串只能是- a*abc和- a?abc。
最後說明一下使用通配符時需要注意的一些問題。由於*、?和〔〕對於shell來說具有比較特殊的意義,因此在標準的檔名中不應出現這些字元。特別是在目錄名中不要出現它們,否則Shell符合起來可能會無窮的遞歸下去。另外要注意的一點是:如果目錄中沒有與特殊的模式串相符合的檔名,那麼Shell 將使用此模式串本身作為參數傳給有關指令。這可能就是指令中出現特殊字元的原因所在。
2. 引號
在shell中引號分為三種:單引號,雙引號和反引號。
* 單引號 『
由單引號括起來的字元都作為普通字元出現。特殊字元用單引號括起來以後,也會失去原有意義,而只作為普通字元解釋。例如:
$ string=』$PATH』
$ echo $string
$PATH
$
可見$保持了其本身的含義,作為普通字元出現。
* 雙引號 「
由雙引號括起來的字元,除$、、』、和」這幾個字元仍是特殊字元並保留其特殊功能外,其餘字元仍作為普通字元對待。對於$來說,就是用其後特殊的變量的值來代替這個變量和$;對於而言,是轉義字元,它告訴shell不要對其後面的那個字元進行特殊處理,只當作普通字元即可。可以想見,在雙引號中需要在前面加上的只有四個字元$,,』和」本身。而對」號,若其前面沒有加,則Shell會將它同前一個」號符合。
例如,我們假定PATH的值為.:/usr/bin:/bin,輸入如下指令:
$ TestString=」$PATH」$PATH」
$ echo $TestString
.:/usr/bin:/ bin」$PATH
$
讀者可以自己試一下在第二個雙引號之前不加會產生什麼結果。

* 反引號 `
反引號(`)這個字元所對應的鍵一般位於鍵盤的左上角,不要將其同單引號(』)混淆。反引號括起來的字串被shell解釋為指令行,在執行時,shell首先執行該指令行,並以它的標準輸出結果取代整個反引號(內含兩個反引號)部分。例如:
$ pwd
/home/xyz
$ string=」current directory is `pwd`」
$ echo $string
current directour is /home/xyz
$
shell執行echo指令時,首先執行`pwd`中的指令pwd,並將輸出結果/home/xyz取代`pwd`這部分,最後輸出取代後的整個結果。
利用反引號的這種功能可以進行指令置換,即把反引號括起來的執行結果賦值給指定變量。例如:
$ today=`date`
$ echo Today is $today
Today is Mon Apr 15 16:20:13 CST 1999
$
反引號還可以嵌套使用。但需注意,嵌套使用時內層的反引號必須用反斜線()將其轉義。例如:
$ abc=`echo The number of users is `who| wc-l``
$ echo $abc
The number of users is 5
$
在反引號之間的指令行中也可以使用shell的特殊字元。Shell為得到``中指令的結果,它實際上要去執行``中特殊的指令。執行時,指令中的特殊字元,如$,」,?等又將具有特殊含義,並且``所包括的可以是任何一個合法的Shell指令,如:
$ ls
note readme.txt Notice Unix.dir
$ TestString=」`echo $HOME ` ` ls 〔nN〕*`」
$ echo $TestString
/home/yxz note Notice
$
其他情況,讀者可自行試之。
1. 注解符
在shell寫程式中經常要對某些正文行進行注解,以增加程式的可讀性。在Shell中以字元「#」開頭的正文行表示注解行。
此外還有一些特殊字元如:用於輸入/輸出重定向與管道的、 >和|;執行後台指令的&;指令執行操作符&&和||及表示指令組的{}將在下面各小節中加以介紹。
標準輸入/輸出和重定向
1. 標準輸入與輸出
我們知道,執行一個shell指令行時通常會自動開啟三個標準檔案,即標準輸入檔案(stdin),通常對應終端的鍵盤;標準輸出檔案(stdout)和標準錯誤輸出檔案(stderr),這兩個檔案都對應終端的螢幕。程式將從標準輸入檔案中得到輸入資料,將標準輸出資料輸出到標準輸出檔案,而將錯誤訊息送到標準錯誤檔案中。
我們以cat指令為例,cat指令的功能是從指令行給出的檔案中讀取資料,並將這些資料直接送到標準輸出。若使用如下指令:
$ cat config
將會把檔案config的內容依次顯示到螢幕上。但是,如果cat的指令行中沒有參數,它就會從標準輸入中讀取資料,並將其送到標準輸出。例如:
$ cat
Hello world
Hello world
Bye
Bye

$
使用者輸入的每一行都立刻被cat指令輸出到螢幕上。
另一個例子,指令sort按行讀入檔案正文(當指令行中沒有給出檔名時,表示從標準輸入讀入),將其排序,並將結果送到標準輸出。下面的例子是從標準輸入讀入一個採購單,並將其排序。
$ sort
bananas
carrots
apples

apples
bananas
carrots
$
這時我們在螢幕上得到了已排序的採購單。
直接使用標準輸入/輸出檔案存在以下問題:
輸入資料從終端輸入時,使用者費了半天勁輸入的資料只能用一次。下次再想用這些資料時就得重新輸入。而且在終端上輸入時,若輸入有誤修改起來不是很方便。
輸出到終端螢幕上的訊息只能看不能動。我們無法對此輸出作更多處理,如將輸出作為另一指令的輸入進行進一步的處理等。
為了解決上述問題,Linux系統為輸入、輸出的傳輸引入了另外兩種機制,即輸入/輸出重定向和管道。
2. 輸入重定向
輸入重定向是指把指令(或可執行程式)的標準輸入重導至特殊的檔案中。也就是說,輸入可以不來自鍵盤,而來自一個特殊的檔案。所以說,輸入重定向主要用於改變一個指令的輸入源,特別是改變那些需要大量輸入的輸入源。
例如,指令wc統計指定檔案包括的行數、單詞數和字元數。如果僅在指令行上鍵入:
$ wc
wc將等待使用者告訴它統計什麼,這時shell就好像死了一樣,從鍵盤鍵入的所有文字都出現在螢幕上,但並沒有什麼結果,直至按下<ctrl+d>,wc才將指令結果寫在螢幕上。
如果給出一個檔名作為wc指令的參數,如下例所示,wc將返回該檔案所包括的行數、單詞數和字元數。
$ wc /etc/passwd
20 23 726 /etc/passwd
$
另一種把/etc/passwd檔案內容傳給wc指令的方法是重定向wc的輸入。輸入重定向的一般形式為:指令this text forms the content
>of the here document,which
>continues until the end of
>text delimter
>delim
4 17 98
在檔名。例如:
$ ls > directory.out
$ cat directory.out
ch1.doc ch2.doc ch3.doc chimp config mail/ test/
$
將ls指令的輸出儲存為一個名為directory.out的檔案。
註:如果>符號後邊的檔案已存在,那麼這個檔案將被重寫。
為避免輸出重定向中指定檔案只能存放現用的指令的輸出重定向的內容,shell提供了輸出重定向的一種追加手段。輸出追加重定向與輸出重定向的功能非常相似,區別僅在於輸出追加重定向的功能是把指令(或可執行程式)的輸出結果追加到指定檔案的最後,而該檔案原有內容不被破壞。
如果要將一條指令的輸出結果追加到指定檔案的後面,可以使用追加重定向操作符>>。形式為:指令>>檔名。例如:
$ ls *.doc>>directory.out
$ cat directory.out
ch1.doc ch2.doc ch3.doc chimp config mail/ test/
ch1.doc ch2.doc ch3.doc
$
和程式的標準輸出重定向一樣,程式的錯誤輸出也可以重新定向。使用符號2>(或追加符號2>>)表示對錯誤輸出裝置重定向。例如下面的指令:
$ ls /usr/tmp 2> err.file
可在螢幕上看到程式的標準輸出結果,但又將程式的任何錯誤訊息送到檔案err.file中,以備將來檢查用。
還可以使用另一個輸出重定向操作符(&>)將標準輸出和錯誤輸出同時送到同一檔案中。例如:
$ ls /usr/tmp &> output.file
利用重定向將指令組合在一起,可實現系統單個指令不能提供的新功能。例如使用下面的指令序列:
$ ls /usr/bin > /tmp/dir
$ wc –w

Linux 常用命令及技巧

Linux 常用命令及技巧

linux 常用指令及技巧:
linux 常用指令總結:
一。 通用指令:
1. date :print or set the system date and time
2. stty -a: 可以檢視或是列印控制字元(Ctrl-C, Ctrl-D, Ctrl-Z等)
3. passwd: print or set the system date and time (用passwd -h檢視)
4. logout, login: 登入shell的登入和註銷指令
5. pwd: print or set the system date and time
6. more, less, head tail: 顯示或部分顯示檔案內容.
7. lp/lpstat/cancel, lpr/lpq/lprm: 列印檔案.
8. 變更檔案權限: chmod u+x...
9. 刪除非空目錄:rm -fr dir
10.複製目錄: cp -R dir
11. fg jobid :可以將一個後台程式放到前台。
  Ctrl-z 可以將前台程式掛起(suspend), 然後可以用bg jobid 讓其到後台運行。
  job & 可以直接讓job直接在後台運行。
12. kill 的作用: send a signal to a process. eg: kill -9 傳送的是SIG_KILL信號。。。 具體傳送什麼信號   可以通過 man kill 檢視。
13. ps 的用法, ps -e 或 ps -o pid,ppid,session,tpgid, comm (其中session顯示的sessionid, tpgid顯示前台程式組id, comm顯示指令名稱。)
二 .ubuntu常用指令:
1. dpkg: package manager for Debian
* 安裝: dpkg -i package
* 卸載: dpkg -r package
* 卸載並刪除配置檔: dpkg -P |--purge package
* 如果安裝一個包時。說依賴某些庫。 可以先 apt-get install somelib...
* 檢視軟體包安裝內容 :dpkg -L package
* 檢視檔案由哪個軟體包提供: dpkg -S filename
* 另外 dpkg還有 dselect和aptitude 兩個frontend.
2. apt
* 安裝: apt-get install packs
* apt-get update : 更新源
* apt-get upgrade: 升級系統。
* apt-get dist-upgrade: 智慧升級。安裝新軟體包,刪除廢棄的軟體包
* apt-get -f install : -f == --fix broken 修復依賴
* apt-get autoremove: 自動刪除無用的軟體
* apt-get remove packages :刪除軟體
* apt-get remove package --purge 刪除包並清除配置檔
* 清除所以刪除包的殘餘配置檔: dpkg -l |grep ^rc|awk '{print $2}' |tr ["/n"] [" "]|sudo xargs dpkg -P
* 安裝軟體時候包的臨時存放目錄 : /var/cache/apt/archives
* 清除該目錄: apt-get clean
* 清除該目錄的舊版本的軟體快取: apt-get autoclean
* 查詢軟體some的依賴包: apt-cache depends some
* 查詢軟體some被哪些包依賴: apt-get rdepends some
* 搜尋軟體: apt-cache search name|regexp
* 檢視軟體包的作用:apt-cache show package
* 檢視一個軟體的編譯依賴庫: apt-cache showsrc packagename|grep Build-Depends
* 下載軟體的原始碼 : apt-get source packagename (注: sources.list 中應該有 deb-src 源)
* 安裝軟體包源程式碼的同時, 安裝其編譯環境 :apt-get build-dep packagename (有deb-src源)
* 如何將本地光碟加入安裝源清單: apt-cdrom add
3. 系統指令:
* 檢視內核版本: uname -a
* 檢視ubuntu 版本: cat /etc/issue
* 檢視網路卡狀態 : ethtool eth0
* 檢視記憶體,cpu的訊息: cat /proc/meminfo ; cat /proc/cpuinfo
(/proc下面的有很多系統訊息)
* 列印檔案系統空間使用情況: df -h
* 檢視硬碟分區情況: fdisk -l
* 產看檔案大小: du -h filename;
* 檢視目錄大小: du -hs dirname ; du -h dirname是檢視目錄下所有檔案的大小
* 檢視記憶體的使用: free -m|-g|-k
* 檢視程式: ps -e 或ps -aux -->顯示使用者
* 殺掉程式: kill pid
* 強制殺掉: killall -9 processname
4. 網路關聯:   
* 配置 ADSL:   sudo pppoeconf
* ADSL手動撥號: sudo pon dsl-provider
* 啟動 ADSL :   sudo /etc/ppp/pppoe_on_boot
* 中斷 ADSL:   sudo poff
* 根據IP查網路卡位址: arping IP位址
* 產看本地網路訊息(內含ip等): ifconfig | ifconfig eth0
* 檢視路由訊息: netstat -r
* 關閉網路卡: sudo ifconfig eth0 down
* 啟用網路卡: sudo ifconfig eth0 up
* 加入一個服務: sudo update-rc.d 服務名 defaults 99
* 刪除一個服務: sudo update-rc.d 服務名 remove
* 臨時重啟一個服務: /etc/init.d/服務名 restart
* 臨時關閉一個服務: /etc/init.d/服務名 stop
* 臨時啟動一個服務: /etc/init.d/服務名 start
* 控制台下顯示中文: sudo apt-get install zhcon
* 搜尋某個檔案: whereis filename 或 find 目錄 -name 檔名
*通過ssh傳輸檔案
scp -rp /path/filename username@remoteIP:/path #將本地檔案複製到伺服器上
scp -rp username@remoteIP:/path/filename /path #將遠端檔案從伺服器下載到本地
5. 壓縮:
*解壓縮 a.tar.gz:   tar zxvf a.tar.gz
*解壓縮 a.tar.bz2: tar jxvf a.tar.bz2
*壓縮aaa bbb目錄為xxx.tar.gz: tar zcvf xxx.tar.gz aaa bbb
*壓縮aaa bbb目錄為xxx.tar.bz2:   tar jcvf xxx.tar.bz2 aaa bbb
6. Nautilus:
特殊 URI 位址
* computer:/// - 全部掛載的裝置和網路
* network:/// - 瀏覽可用的網路
* burn:/// - 一個燒錄 CDs/DVDs 的資料虛擬目錄
* smb:/// - 可用的 windows/samba 網路資源
* x-nautilus-desktop:/// - 桌面項目和圖示
* file:/// - 本地檔案
* trash:/// - 本地回收站目錄
* ftp:// - FTP 資料夾
* ssh:// - SSH 資料夾
* fonts:/// - 字型資料夾,可將字型檔案拖到此處以完成安裝
* themes:/// - 系統主旨資料夾
* 顯示隱藏檔案: Ctrl+h
* 顯示位址欄: Ctrl+l
* 檢視已安裝字型: 在nautilus的位址欄裡輸入」fonts:///「,就可以檢視本機所有的fonts
7.補充部分:
* 檢視本地所有的tpc,udp監聽埠: netstat -tupln (t=tcp, u=udp, p=program, l=listen, n=numric)
* 通過man搜說關聯指令: man -k keyword . eg: man -k user
* 或是用 apropos
* 統計檔案所佔用的實際磁碟空間: du   (du - estimate file space usage)
* 統計檔案中的字元,位元組數: wc -c/-l/-w   (wc - print the number of newlines, words, and bytes in files)
* 檢視檔案的內容: od -x/-c/....   (od - dump files in octal and other formats)
    我認為od最有用的就是檔案的位元組流了: od -t x1 filename
    檢視檔案的 Ascii 碼形式: od -t c filename (其中統計訊息最左邊的是: 位元組數)
* 搜尋指令所在檔案的位置: which od 輸出: /usr/bin/od
    檢視該檔案由哪個包提供: dpkg -S /usr/bin/od   輸出: coreutils: /usr/bin/od
    再檢視coreutils包的全部內容就知道了linux的核心指令: dpkg -L coreutils
    然後 info coreutils    哈哈,認真學吧, 滿世界都是指令!
* 可以用man 指令產看某個指令的所有section 的解釋: man -a tty
    然後用q,和next 轉換到下一個section的解釋
  * bash 的好用的快捷鍵:
  ctrl+a:游標移到行首。
  ctrl+b:游標左移一個字母
  ctrl+c:殺死現用的程式。
  ctrl+d:離開現用的 Shell。
  ctrl+e:游標移到行尾。
  ctrl+h:刪除游標前一個字元,同 backspace 鍵相同。
  ctrl+k:清除游標後至行尾的內容。
  ctrl+l:清屏,相當於clear。
  ctrl+r:搜尋之前打過的指令。會有一個提示,根據你輸入的關鍵字進行搜尋bash的history
  ctrl+u: 清除游標前至行首間的所有內容。
  ctrl+w: 移除游標前的一個單詞
  ctrl+t: 交換游標位置前的兩個字元
  ctrl+y: 貼上或是還原上次的刪除
  ctrl+d: 刪除游標所在字母;注意和backspace以及ctrl+h的區別,這2個是刪除游標前的字元
  ctrl+f: 游標右移
  ctrl+z : 把現用的程式轉到後台運行,使用』 fg 『指令還原。比如top -d1 然後ctrl+z ,到後台,然後fg,重新還原
* 快速貼上:先在一個地方選中文字,在欲貼上的地方按滑鼠 中鍵 即可。
* 等效中鍵:a 、按下滑輪等效於中鍵。b、同時按下滑鼠 左右鍵,等效於中鍵。
* 快速重啟X服務: 同時按下: Alt + Ctrl + Backspace 三個鍵。
* 開啟"運行"視窗: 同時按下 Alt + F2 鍵。
* 戴屏: a、全螢幕:直接按下 PrtScr 鍵。
  b、現用的視窗:同時按下 Alt + PrtScr 鍵。
  c、延時戴屏:在 終端 或 "運行"視窗中輸入指令: gnome-screenshot --delay 3 ,將延時 3 秒後戴屏。
* 直接將 檔案管理器 中的檔案拖到 GNOME終端 中就可以在終端中得到完整的路徑名。
8.  ulimit
ulimit:顯示(或設定)使用者可以使用的資源的限制(limit),這限制分為軟限制(現用的限制)和硬限制(上限),其中硬限制是軟限制的上限值,應用程式在運行過程中使用的系統資源不超過相應的軟限制,任何的超越都導致程式的終止。
ulimited      不限制使用者可以使用的資源,但本設定對可開啟的最大檔案數(max open files)
和可同時運行的最大程式數(max user processes)無效
-a      列出所有現用的資源極限
-c      設定core檔案的最大值.單位:blocks
-d      設定一個程式的資料段的最大值.單位:kbytes
-f      Shell 建立檔案的檔案大小的最大值,單位:blocks
-h      指定設定某個給定資源的硬極限。如果使用者擁有 root 使用者權限,可以增大硬極限。任何使用者均可減少硬極限
-l      可以鎖住的物理記憶體的最大值
-m      可以使用的常駐記憶體的最大值,單位:kbytes
-n      每個程式可以同時開啟的最大檔案數
-p      設定管道的最大值,單位為block,1block=512bytes
-s      指定堆疊的最大值:單位:kbytes
-S      指定為給定的資源設定軟極限。軟極限可增大到硬極限的值。如果 -H 和 -S 標誌均未指定,極限適用於以上二者
-t      指定每個程式所使用的秒數,單位:seconds
-u      可以運行的最大並發程式數
-v      Shell可使用的最大的虛擬記憶體,單位:kbytes
eg: ulimit -c 1000(可以先通過ulimit -c 檢視原來的值)

微軟WindowsInternet Explorer瀏覽器可能被駭客盜取個人資料或接管電腦

網友的電腦最基本的用途就是:上網!
然而微軟公司發布有關「視窗」作業系統的重大安全瑕疵警告
新發現的「視窗」作業系統瑕疵,可能被駭客用來盜取個人資料或接管電腦。
還是別再用Internet Explorer瀏覽器了吧!
換用FireFox、Google Chrome和Safari的瀏覽器(一樣不用花錢購買,免費!)
何必因為作業系統是:微軟Windows就一定要用Internet Explorer瀏覽器?


以下是今天新聞的全文引用:
--------------------------------------------------------

微軟視窗瑕疵 9億用戶遭殃
聯合 更新日期:"2011/02/02 10:26" 編譯田思怡/報導

微軟公司發布有關「視窗」作業系統的重大安全瑕疵警告,將影響全球9億Internet Explorer瀏覽器的用戶。

微軟表示,新發現的「視窗」作業系統瑕疵,可能被駭客用來盜取個人資料或接管電腦。

這個瑕疵很嚴重,可能影響所有Internet Explorer用戶。在找出永久解決辦法前,微軟建議用戶下載安全更新(security patch)。

FireFox、Google Chrome和Safari並未受到影響,這些軟體和Internet Explorer不同,並不支持MHTML檔,而這也正是問題所在。

這個安全漏洞只會影響Internet Explorer對一些網頁的處理方式。

vi 指令大全(Linux主機)

vi 指令大全(Linux主機)

Vi指令大全
進入vi的指令
vi filename: 開啟或新增檔案,並將游標置於第一行首
vi +n filename: 開啟檔案,並將游標置於第n行首
vi + filename: 開啟檔案,並將游標置於最後一行首
vi +/pattern filename: 開啟檔案,並將游標置於第一個與pattern符合的串處
vi -r filename: 在上次正用vi編輯時發生系統崩潰,還原filename
vi filename....filename: 開啟多個檔案,依次進行編輯
搬移游標類指令
h: 游標左移一個字元
l: 游標右移一個字元
space: 游標右移一個字元
Backspace: 游標左移一個字元
k或Ctrl+p: 游標上移一行
j或Ctrl+n: 游標下移一行
Enter: 游標下移一行
w或W : 游標右移一個字至字首
b或B : 游標左移一個字至字首
e或E : 游標右移一個字至字尾
): 游標移至句尾
(: 游標移至句首
}: 游標移至段落開頭
{: 游標移至段落結尾
nG: 游標移至第n行首
n+: 游標下移n行
n-: 游標上移n行
n$: 游標移至第n行尾
H: 游標移至螢幕頂行
M: 游標移至螢幕中間行
L: 游標移至螢幕最後行
0: 游標移至現用的行首
$: 游標移至現用的行尾
螢幕翻滾類指令
Ctrl+u: 向檔案首翻半屏
Ctrl+d: 向檔案尾翻半屏
Ctrl+f: 向檔案尾翻一屏
Ctrl+b: 向檔案首翻一屏
nz: 將第n行滾至螢幕頂部,不指定n時將現用的行滾至螢幕頂部。
插入文字類指令
i: 在游標前
I: 在現用的行首
a: 游標後
A: 在現用的行尾
o: 在現用的行之下新開一行
O: 在現用的行之上新開一行
r: 取代現用的字元
R: 取代現用的字元及其後的字元,直至按ESC鍵
s: 從現用的游標位置處開始,以輸入的文字替代指定數目的字元
S: 刪除指定數目的行,並以所輸入文字代替之
ncw或nCW: 修改指定數目的字
nCC: 修改指定數目的行
[
編輯
]
刪除指令
ndw或ndW: 刪除游標處開始及其後的n-1個字
do: 刪至行首
d$: 刪至行尾
ndd: 刪除現用的行及其後n-1行
x或X: 刪除一個字元,x刪除游標後的,而X刪除游標前的
Ctrl+u: 刪除輸入模式下所輸入的文字
搜尋及取代指令/pattern: 從游標開始處向檔案尾搜尋pattern
?pattern: 從游標開始處向檔案首搜尋pattern
n: 在同一方向重複上一次搜尋指令
N: 在反方向上重複上一次搜尋指令
:s/p1/p2/g: 將現用的行中所有p1均用p2替代
:n1,n2s/p1/p2/g: 將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g: 將檔案中所有p1均用p2取代
[
編輯
]
選項設定
all: 列出所有選項設定情況
term: 設定終端類型
ignorance: 在搜尋中忽略大小寫
list: 顯示定位點(Ctrl+I)和行尾標誌($)
number: 顯示行號
report: 顯示由面向行的指令修改過的數目
terse: 顯示簡短的警示訊息
warn: 在轉到別的檔案時若沒儲存現用的檔案則顯示NO write訊息
nomagic: 容許在搜尋模式中,使用前面不帶「\」的特殊字元
nowrapscan: 禁止vi在搜尋到達檔案兩端時,又從另一端開始
mesg: 容許vi顯示其他使用者用write寫到自己終端上的訊息
最後行模式指令:n1,n2 co n3: 將n1行到n2行之間的內容複製到第n3行下
:n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下
:n1,n2 d: 將 n1行到n2行之間的內容刪除
:w: 儲存現用的檔案
:e filename: 開啟檔案filename進行編輯
:x: 儲存現用的檔案並離開
:q: 離開vi
:q!: 不儲存檔案並離開vi
:!command: 執行shell指令command
:n1,n2 w!command: 將檔案中n1行至n2行的內容作為command的輸入並執行之,
若不指定n1,n2,則表示將整個檔案內容作為command的輸入
:r!command: 將指令command的輸出結果放到現用的行
暫存器操作
"?nyy: 將現用的行及其下n行的內容儲存到暫存器?中,其中?為一個字母,n為一個數字
"?nyw: 將現用的行及其下n個字儲存到暫存器?中,其中?為一個字母,n為一個數字
"?nyl: 將現用的行及其下n個字元儲存到暫存器?中,其中?為一個字母,n為一個數字
"?p: 取出暫存器?中的內容並將其放到游標位置處。這裡?可以是一個字母,也可以是一個數字
ndd: 將現用的行及其下共n行文字刪除,並將所刪內容放到1號刪除暫存器中
本Linux主機伺服器架設基地立志於收集各類Linux主機伺服器架設、網站架設及網頁設計技術教學資訊,便於本人和廣大網友及網友查詢檢索,無論公司或個人認為本站存在侵權內容均可與本站聯繫,任何此類反饋資訊一經查明屬實後,將立即移除!