linuxksh
A. linux ksh命令怎麼實現循環
如果你想使用ksh作為你的默認shell 用chsh命令
格式
chsh [ -s shell ] [ username ]
描述
chsh 用來更換你登入時所用的shell 。在命令列沒指定shell。 chsh 會提示一個給你。
加入你的名字叫user 就這樣
chsh -s ksh user 就可以改變你默認的登陸shell了
其實bash比ksh強大很多了 否則也不會所有的linux發行版都用bash做默認shell了
學習的話 想用得時候直接運行ksh 就可以 退出的時候運行exit
B. linux下怎麼修改用戶的默認目錄
1、開始之前,我們需要有root許可權。這里我們就以binn這個用戶為例。我們先來看看我們機器上有哪些shell。cat /etc/shells。
6、然後我們再次登錄binn。可以看到確實是ksh無誤。
C. linux 有哪些shell
Linux下的常見Shell有:Bash、sh、zsh、ksh、csh等。
以下是關於Linux中常見Shell的
Bash(Bourne Again SHell):Bash是Linux中最流行的shell之一。它是Bourne shell的替代品,兼容並擴展了許多其他shell的特性。Bash擁有豐富的功能,包括編程介面、可配置的編輯界面和命令行編輯功能。由於其強大的功能和易用性,Bash成為了很多Linux用戶的首選shell。
sh(Bourne Shell):sh是最早的Unix shell,是Unix系統上最早的命令行解釋器。雖然其功能相對簡單,但在早期的Linux系統中仍然廣泛使用。許多其他shell都是基於Bourne shell的。
zsh(Z Shell):zsh是一個功能強大的shell,擁有豐富的特性和配置選項。它提供了豐富的命令行編輯功能、自動補全和語法高亮等功能。zsh還支持插件和自定義腳本,使得用戶可以輕松擴展其功能。
ksh(Korn Shell):ksh是一種流行的shell,它結合了其他shell的特性並擴展了一些新功能。ksh具有強大的編程介面和命令行編輯功能,使得它成為許多系統管理員和高級用戶的首選shell。
csh(C Shell):csh是一種歷史悠久的shell,主要受到C語言程序員的影響。它具有一些獨特的特性,如命令歷史記錄和內置函數等。盡管csh在某些特定場合仍然被使用,但由於其局限性,它的普及程度不如Bash等其他shell。
每種shell都有其獨特的特點和優勢,用戶可以根據自己的需求和偏好選擇合適的shell。在Linux系統中,可以通過命令行界面輕松地切換和使用不同的shell。
D. linux下的shell是什麼
什麼是shell
shell是用戶和Linux
操作系統
之間的
介面
。Linux中有多種shell,其中預設使用的是Bash。本章講述了shell的工作原理,shell的種類,shell的一般操作及Bash的
特性
。
什麼是shell
Linux系統的shell作為操作系統的
外殼
,為用戶提供使用操作系統的介面。它是
命令語言
、命令
解釋程序
及
程序設計語言
的統稱。
shell是用戶和
Linux內核
之間的介面
程序
,如果把Linux內核想像成一個
球體
的中心,shell就是圍繞
內核
的外層。當從shell或其他程序向Linux傳遞命令時,內核會做出相應的反應。
shell是一個命令語言
解釋器
,它擁有自己內建的shell命令集,shell也能被系統中其他
應用程序
所調用。用戶在提示符下輸入的命令都由shell先解釋然後傳給Linux核心。
Shell是一種具備
特殊功能
的程序,
它是介於使用者和
UNIX/linux
操作系統之核心
程序(kernel)間的一個介面。為什麼我們說
shell
是一種介於系統核心程序與使用者
間的中介者呢?讀過操作系統概論的讀者們都知道操作系統是一個
系統資源
的管理者與分
配者,當您有需求時,您得向系統提出;從操作系統的角度來看,它也必須防止使用者因
為錯誤的操作而造成系統的傷害?眾所周知,對
計算機
下命令得透過命令(command)
或
是程序(program);程序有編譯器(compiler)將程序轉為
二進制代碼
,可是命令呢?
其實shell
也是一支程序,它由
輸入設備
讀取命令,再將其轉為計算機可以了解的機械碼,
然後執行它。
各種操作系統都有它自己的
shell,以
DOS
為例,它的
shell
就是
command.com文
件。如同
DOS
下有
NDOS,4DOS,DRDOS
等不同的命令解譯程序可以取代標準的
command.com
,UNIX
下除了
Bourne
shell(/bin/sh)
外還有
C
shell(/bin/csh)、
Korn
shell(/bin/ksh)、Bourne
again
shell(/bin/bash)、Tenex
C
shell(tcsh)
等其它的
shell。UNIX/linux將
shell
獨立於核心程序之外,
使得它就如同一般的應用
程序,
可以在不影響操作系統本身的情況下進行修改、更新版本或是添加新的功能。
有一些命令,比如改變工作目錄命令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實現),結束登錄。