文件打印輸出
============
使用者可用 .login 檔中之 setenv PRINTER,來設定打印資料時的打印機名。
printername :sp1 或 sp2 (1005 教室)
Example :
%setenv PRINTER sp2 設定自 sp2 打印資料。
一般文件之打印
==============
執行格式:lpr [-Pprinter-name] filename
%lpr file1 或 lpr -Psp2 file1
自 sp2,打印文件 file1。
執行格式:enscript [-Pprinter-name] filename
%enscript file3 或 enscript -Psp1 file3
自 sp1 打印文件 file3。
.troff 文件之打印
==================
執行格式:ptroff [-Pprinter-name] [-man][-ms] filename
%ptroff -man /usr/local/man/man1/ptroff.1
以 troff 格式,自 Apple laser writer 打印 ptroff 命令之使用說明。
%ptroff -Psp2 -man /usr/man/man1/lpr1
以 troff 格式,自 sp2 打印 lpr 命令之使用說明。
打印機控制命令
==============
.檢查打印機狀態,及打印工作順序編號和使用者名稱
================================================
執行格式:lpq [-Pprinter -name]
%lpq 或 lpq -Psp1
檢查 sp1 打印機之狀態。
.刪除打印機內之打印工作 ( 使用者僅可刪除自己的打印工作 )
========================
執行格式:lprm [-Pprinter -name] username 或 job number
%lprm user 或 lprm -Psp1 user
刪除 sp1 中,使用者 user 的打印工作,此時使用者名稱必須為 user。
%lprm -Psp2 456
刪除 sp2 編號為 456 之打印工作。
Job 之控制
===========
UNIX O.S.,可於 foregrourd 及 background 同時處理多個 process。
一般使用者執行命令時,皆是在 foreground 交談式地執行 process,亦可將 process
置於 background 中,以非交談式來執行 process。
.查看系統之 process
====================
執行格式:ps [-aux]
Example:
%ps 或 ps -x (查看系統中,屬於自己的 process。)
%ps -au (查看系統中,所有使用者的 process。)
%ps -aux (查看系統中,包含系統內部,及所有使用者的 process。)
.結束或終止 process
====================
執行格式:kill [-9] PID ( PID 為利用 ps 命令所查出之 process ID。)
Example:
%kill 456 或 kill -9 456
終止 process ID 為 456 之 process。
.在 background 執行 process 的方式
===================================
執行格式:command & (於 command 後面加入一 "&" 符號即可。)
Example:
%cc file1.c &
將編譯 file1.c 文件之工作,置於 background 執行。
執行格式:按下 "Control Z" 鍵,暫停正在執行的 process。鍵入 "bg" 命令,
命令,將所暫停的 process,置入 background 中繼續執行。
Example:
%cc file2.c
^Z
Stopped
%bg
.查看正在 background 中執行的 process
======================================
執行格式:jobs
.結束或終止在 background 中的 process
======================================
執行格式:kill %n
(n 為利用 "jobs" 命令,所查看出的 background job 編號)
Example:
%kill % 終止在 background 中的第一個 job。
%kill %2 終止在 background 中的第二個 job。
shell varialbe
==============
.查看 shell variable 之設定值
==============================
執行格式:set 查看所有 shell variable 之設定值。
%set
執行格式:echo $variable-name 顯示指定的 shell variable 之設定值。
%echo $PRINTER
sp1
.設定 shell variable
=====================
執行格式:set var = value
Example:
%set term=vt100
設定 shell variable "term" 為 VT100 終端機之型式。
.刪除 shell variable
=====================
執行格式:unset var
Example:
%unset PRINTER
刪除 shell variable "PRINTER" 之設定值。
environment variable
=====================
.查看 environment variable 之設定值
====================================
執行格式:setenv 查看所有 environment variable 之設定值。
Example: %setenv
執行格式:echo $NAME 顯示指定的 environment variable "NAME" 之設定值。
Example:
%echo $PRINTER
顯示 environment variable "PRINTER" 打印機名稱之設定值。
.設定 environment variable
===========================
執行格式:setenv NAME word
Example:
%setenv PRINTER sp1
設定 environment variable "PRINTER" 打印機名稱為 sp1。
.刪除 environment variable
===========================
執行格式:unsetenv NAME
Example:
%unsetenv PRINTER
刪除 environment variable "PRINTER" 打印機名稱之設定值。
alias
=====
.查看所定義的命令之 alias
==========================
執行格式: alias 查看自己目前定義之所有命令,及所對應之 alias 名稱。
執行格式: alias name 查看指定之 alias 名稱所定義之命令。
Example:
%alias dir (查看別名 dir 所定義之命令)
ls -atl
.定義命令之 alias
==================
執行格式: alias name 'command line'
Example:
% alias dir 'ls -l'
將命令 "ls - l" 定義別名為 dir。
.刪除所定義之 alias
====================
執行格式: unalias name
Example:
%unalias dir (刪除別名為 dir 之定義。)
%unalias * (刪除所有別名之設定。)
history
=======
.設定命令記錄表之長度
======================
執行格式: set history = n
Example:
%set history = 40
設定命令記錄表之長度為 40 (可記載執行過之前面 40 個命令)。
.查看命令記錄表之內容
======================
執行格式: history
.使用命令記錄表
================
執行格式: !!
Example: %!! (重覆執行前一個命令)
執行格式: !n ( n 為命令記錄表之命令編號。)
Example: %!5 ( 執行命令記錄表中第五個命令。)
執行格式: !string ( 重覆前面執行過以 string 為起始字元之命令。)
Example: %!cat ( 重覆前面執行過,以 cat 為起始字元之命令。)
.顯示前一個命令之內容
======================
執行格式: !!:p
.更改前一命令之內容並執行之
============================
執行格式: ^oldstring ^newstring
將前一命令中 oldstring 的部份,改成 newstring,並執行之。
Example:
%find . -name file1.c -print
^file1.c^core
%find . -name core -print
注:文件 core 為執行程式或命令發生錯誤時,系統所產生的文件。作為偵錯(debug)之□
,因其所占空間極大,通常將之刪除。
資料之壓縮
==========
為了避免不常用的文件或資料,占用太大的磁盤空間,請使用者將之壓縮。欲使用壓縮過
的文件或資料前,將之反壓縮,即可還原成原來之資料型式。凡是經過壓縮處理之文件,
會在文件名後面附加 " .Z " 之字元,表示此為一壓縮文件。
.壓縮資料
==========
執行格式:compress filename 壓縮文件
執行格式:compressdir directory-name 壓縮目錄
.解壓縮還原資料
================
執行格式:uncompress filename 反壓縮文件
執行格式:uncompressdir directory-name 反壓縮目錄
pipe-line 之使用
================
執行格式:command1 │ command2
將 command1 執行結果,送到 command2 做為 command2 的輸入。
Example:
%ls -Rl │ more
以分頁方式,列出目前目錄下所有文件,及子目錄之名稱。
%cat file1 │ more
以分頁方式,列出文件 file1 之內容。
I/O control
===========
.標准輸入之控制
================
執行格式:command-line < file
將 file 做為 command-line 之輸入。
Example:
%mail -s "mail test"
[email protected] < file1
將文件 file1 當做信件之內容,Subject 名稱為 mail test,送給收信人。
.標准輸出之控制
================
執行格式:command > filename
將 command 之執行結果,送至指定的 filename 中。
Example: %ls -l > list
將執行 "ls -l" 命令之結果,寫入文件 list 中。
執行格式:command >! filename
同上,若 filename 之文件已經存在,則強迫 overwrite。
Example: %ls -lg >! list
將執行 "ls - lg" 命令之結果,強迫寫入文件 list 中。
執行格式:command >& filename
將 command 執行時,螢幕上所產生的任何訊息,寫入指定的 filename 中。
Example: %cc file1.c >& error
將編譯 file1.c 文件時,所產生之任何訊息,寫入文件 error 中。
執行格式:command >> filename
將 command 執行結果,附加(append)到指定的 filename 中。
Example: %ls - lag >> list
將執行 "ls - lag" 命令之結果,附加(append)到文件 list 中。
執行格式:command >>& filename
將 command 執行時,螢幕上所產生的任何訊息,附加於指定的 filename中。
Example: %cc file2.c >>& error
將編譯 file2.c 文件時,螢幕所產生之任何訊息,附加於文件 error 中。
查看系統中的使用者:
===================
執行格式: who 或 finger
執行格式: w
執行格式: finger username or finger username@domainname
改變自己的 username 進入其他使用者的帳號,擁有其使用權利。
=========================================================
執行格式: su username
Example:
%su user 進入使用者 user 之帳號
passwrod: 輸入使用者 user 之密碼
查看 username:
==============
執行格式: who am i 查看 login 時,自己的 username。
執行格式: whoami 查看目前的 username。若已執行過 "su"命令(switch user),
則顯示出此 user 之 username。
查看目前系上所有工作站的使用者:
===============================
執行格式: rusers
=> 結束
與某工作站上的使用者交談:
=========================
執行格式: talk username@hostname 或 talk username@ip_address
Example:
1. 可先利用 rusers 指令查看網路上的使用者
2. 假設自己的帳號是 u84987 ,在工作站 indian 上使用,現在想要與 doc 上的
u84123 交談。
%talk u84123@doc ==> 此時螢幕上將會出現等待畫面
在對方(u84123)螢幕上將會出現下列訊息
Message from Talk_Daemon@Local_host_name at xx:xx
talk: connection requested by u84987@indian
talk: respond with: talk u84987@indian
此時對方(u84123) 必須執行 talk u84987@indian 即可互相交談。
最後可按結束。
檢查遠端電腦系統是否正常
========================
執行格式:ping hostname 或 ping IP-Address
Example:
%ping doc
電子郵件(E-mail)的使用簡介
==========================
本系之 E-mail address 為 ice.ntnu.edu.tw
..將文件當做 E-mail 的內容送出
=============================
執行格式:mail -s "Subject-string" username@address < filename
%mail -s "program" user < file.c
將 file.c 當做 mail 的內容,送至 user, subject name 為 program。
..傳送 E-mail 給本系使用者
========================
執行格式:mail username
%mail user