UNIX 系統操作入門(二)

火星人 @ 2014-03-12 , reply:0


  
文件列印輸出
============
使用者可用 .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" user@iis.sinica.edu.tw < 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




[火星人 via ] UNIX 系統操作入門(二)已經有133次圍觀

http://www.coctec.com/docs/unix/show-post-73941.html