導航:首頁 > 程序命令 > shellbash命令

shellbash命令

發布時間:2023-04-14 01:15:21

Ⅰ bash(shell)命令解釋器,linux界面介紹

Linux bash命令行:bash命令行解釋器或者翻譯官,命令行輸入命令都是由bash解釋執行的。

一、命令行

二、查詢當前登錄的用戶:

root

三、查詢當前用戶主機名:

oldboy

四、查詢當前用戶所在的路徑:

/root

五、切換用戶:

#切換到oldboy用戶

(#$是普通用戶的提示符。一般大臣,布衣。) 

oldboy

六、符號的意思

~        用戶家目錄

-          上一次所在的目錄

.         表示當前目錄

..         上一級目錄

../..      表示上一級的上一級目錄

Ⅱ linux shell腳本執行命令詳解

在Linux下,如果你需要執行shell腳本,那麼應該使用那個命令呢?下面由我為大家整理了linux shell腳本執行命令的相關知識,希望對大家有幫助!

linux shell腳本執行

linux shell腳本執行方法一: 切換到shell腳本所在的目錄(此時,稱為工作目錄)執行shell腳本:

cd /data/shell

./hello.sh

./的意思是說在當前的工作目錄下執行hello.sh。如果不加上./,bash可能會響應找到不到hello.sh的錯誤信息。因為目前的工作目錄(/data/shell)可能不在執行程序默認的搜索路徑之列,也就是說,不在環境變數PASH的內容之中。查看PATH的內容可用 echo $PASH 命令。現在的/data/shell就不在環境變數PASH中的,所以必須加上./才可執行。

linux shell腳本執行方法二: 以絕對路徑的方式去執行bash shell腳本:

/data/shell/hello.sh

linux shell腳本執行方法三: 直接使用bash 或sh 來執行bash shell腳本:

cd /data/shell

bash hello.sh

cd /data/shell

sh hello.sh

注意,若是以方法三的方式來執行,那麼,可以不必事先設定shell的執行許可權,甚至都不用寫shell文件中的第一行(指定bash路徑)。因為方法三是將hello.sh作為參數傳給sh(bash)命令來執行的。這時不是hello.sh自己來執行,而是被人家調用執行,所以不要執行許可權。那麼不用指定bash路徑自然也好理解了啊。

linux shell腳本執行方法四: 在當前的shell環境中執行bash shell腳本:

cd /data/shell

. hello.sh

cd /data/shell

source hello.sh

前三種方法執行shell腳本時都是在當前shell(稱為父shell)開啟一個子shell環境,此shell腳本就在這個子shell環境中執行。shell腳本執行完後子shell環境隨即關閉,然後又回到父shell中。而方法四則是在當前shell中執行的。

Ⅲ bash shell是什麼

shell是你(用戶)和Linux(或者更准確的說,是你和Linux內核)之間的介面程序。你在提示符下輸入的每個命令都由shell先解釋然後傳給Linux內核。
shell 是一個命令語言解釋器(command-language interpreter)。擁有自己內建的 shell 命令集。此外,shell也能被系統中其他有效的Linux 實用程序和應用程序(utilities and application programs)所調用。
不論何時你鍵入一個命令,它都被Linux shell所解釋。一些命令,比如列印當前工作目錄命令(pwd),是包含在Linux bash內部的(就象DOS的內部命令)。其他命令,比如拷貝命令(cp)和移動命令(rm),是存在於文件系統中某個目錄下的單獨的程序。而對用戶來說,你不知道(或者可能不關心)一個命令是建立在shell內部還是一個單獨的程序。
shell 首先檢查命令是否是內部命令,不是的話再檢查是否是一個應用程序,這里的應用程序可以是Linux本身的實用程序,比如ls 和 rm,也可以是購買的商業程序,比如 xv,或者是公用軟體(public domain software),就象 ghostview。然後shell試著在搜索路徑($PATH)里尋找這些應用程序。搜索路徑是一個能找到可執行程序的目錄列表。如果你鍵入的命令不是一個內部命令並且在路徑里沒有找到這個可執行文件,將會顯示一條錯誤信息。而如果命令被成功的找到的話,shell的內部命令或應用程序將被分解為系統調用並傳給Linux內核。
shell的另一個重要特性是它自身就是一個解釋型的程序設計語言,shell 程序設計語言支持在高級語言里所能見到的絕大多數程序控制結構,比如循環,函數,變數和數組。shell 編程語言很易學,並且一旦掌握後它將成為你的得力工具。任何在提示符下能鍵入的命令也能放到一個可執行的shell程序里,這意味著用shell語言能簡單地重復執行某一任務。 《Linux就該這么學》
Bourne Again shell (bash), 正如它的名字所暗示的,是 Bourne shell 的擴展。bash 與 Bourne shell 完全向後兼容,並且在 Bourne shell 的基礎上增加和增強了很多特性。bash 也包含了很多 C 和 Korn shell 里的優點。bash 有很靈活和強大的編程介面,同時又有很友好的用戶界面。
為什麼要用 bash 來代替 sh 呢?Bourne shell 最大的缺點在於它處理用戶的輸入方面。在 Bourne shell 里鍵入命令會很麻煩,尤其當你鍵入很多相似的命令時。而 bash 准備了幾種特性使命令的輸入變得更容易。

Ⅳ Linux裡面bash是什麼

bash實質上是一個可執行程序,一個用戶的工作環境。
bash的功能一是可以記入歷史命令,第二呢,可以用tab鍵自動補全。第三。alias命令別名,第四呢,工作控制,可以將某些任務放到後台去運行。再一個是程序腳本就是可以執行shell腳本文件。還有通配符以及內建命令type。

Ⅳ 在linux下 什麼是bash.什麼又是shell

bash 是一個為GNU項目編寫的Unix shell,也就是linux用的shell。

Shell俗稱殼(用來區別於內核),是指「提供使用者使用界面」的軟體,就是一個命令行解釋器。

BASH是SHELL的一種,是大多數LINUX發行版默認的SHELL,除BASH SHELL外還有C SHELL等其它類型的SHELL。

(5)shellbash命令擴展閱讀:

linux主要特性:

1,基本思想:

Linux的基本思想有兩點:第一,一切都是文件;第二,每個軟體都有確定的用途。其中第一條詳細來講就是系統中的所有都歸結為一個文件,包括命令、硬體和軟體設備、操作系統、進程等等對於操作系統內核而言,都被視為擁有各自特性或類型的文件。至於說Linux是基於Unix的,很大程度上也是因為這兩者的基本思想十分相近。

2,完全免費:

Linux是一款免費的操作系統,用戶可以通過網路或其他途徑免費獲得,並可以任意修改其源代碼。這是其他的操作系統所做不到的。正是由於這一點,來自全世界的無數程序員參與了Linux的修改、編寫工作,程序員可以根據自己的興趣和靈感對其進行改變,這讓Linux吸收了無數程序員的精華,不斷壯大。

3,完全兼容POSIX1.0標准:

這使得可以在Linux下通過相應的模擬器運行常見的DOS、Windows的程序。這為用戶從Windows轉到Linux奠定了基礎。許多用戶在考慮使用Linux時,就想到以前在Windows下常見的程序是否能正常運行,這一點就消除了他們的疑慮。

4,多用戶、多任務:

Linux支持多用戶,各個用戶對於自己的文件設備有自己特殊的權利,保證了各用戶之間互不影響。多任務則是現在電腦最主要的一個特點,Linux可以使多個程序同時並獨立地運行。

5,良好的界面:

Linux同時具有字元界面和圖形界面。在字元界面用戶可以通過鍵盤輸入相應的指令來進行操作。它同時也提供了類似Windows圖形界面的X-Window系統,用戶可以使用滑鼠對其進行操作。在X-Window環境中就和在Windows中相似,可以說是一個Linux版的Windows。

Ⅵ shell命令中用source 和sh(或者bash)執行腳本的區別,以及export的作用

用戶登錄到Linux系統後,系統將啟動一個用戶shell,我們暫且稱這個shell為shell父。在這個shell父中,可以使用shell命令或聲明變數,也可以創建並運行shell腳本程序。

當使用sh或者bash運行shell腳本程序時,系統將創建一個子shell,我們暫且稱為shell子。此時,系統中將有兩個shell,一個是登錄時系統啟動的shell父,另一個是系統為運行腳本程序創建的shell子。

當一個腳本程序運行完畢,腳本shell子將終止,返回到執行該腳本之前的shell父。這時腳本中創建的變數或者環境變數(export的變數)是在shell子中創建的,只在shell子中有效,在shell父中是無法訪問的source(或者.)的作用是文件包含,當使用source運行腳本程序時,系統並不會創建子shell,而是將腳本中的命令放到shell父中運行,這時腳本中創建的變數或者環境變數(export的變數)相當於是在shell父中創建的,在shell父中是可以訪問的。
因此使用source執絕拆行修改後的配置文件會直春昌接生效,不需要重啟export 的作用是為當前shell設置環境並森棗變數,這樣變數在其子shell也可以訪問,當然,在其父shell中還是無法訪問的普通的變數只在當前shell中可以訪問,在父shell或者子shell中都無法訪問。

export 也是 bash 的一個內置命令。它主要是用來將父 shell 里的變數導出供子 shell 使用。
它有如下特徵:

Ⅶ bash常用命令

alias: 為一個命令定義一個別名;
unalias:刪除指定的別名;
bg: 將任務放到後台運行;
fg:將作業放到前台運行;
break: 跳出for、while、select或until循環;
continue: 繼續執行for、while、select或until循環的下一次迭代;
builtin: 執行指定的shell內建命令;
cd: 切換為指定的目錄;
dirs: 出當前存儲目錄的列表;
echo:將指定字元串輸出;
export:設置子shell進程可用的變數;
jobs:輸出提交的任務;
history:命令歷史記錄;
kill:殺掉指定進程;
pwd:顯示當前工作目錄的路徑名;
set:設置並顯示環境變數的值;
unset:刪除指定的環境變數;
source:讀取並執行指定文件中的命令;
times:顯示累計的用戶和系統時間;
cat:列出指定文件的內容;
chmod:為指定文件或目錄修改許可權;
date:顯示日期;
df:顯示所有掛載設備的當前磁碟空間使用情況;
:顯示指定文件路徑的磁碟使用情況;
file:查看文件類型;
find:對文件進行遞歸查找;
grep:在文件中查找字元串;
getopt:解析命令選項;
gzip:採用Lempel-Ziv編碼的GNU項目壓縮工具;
head:顯示指定文件內容的開頭部分;
help:顯示bash內建命令的幫助頁面;
link:創建一個指向文件的鏈接;
ls:列出目錄內容;
man:顯示指定命令的教程;
mkdir :在當前目錄下創建文件夾
more:列出指定文件的內容,在每屏數據後暫停下來;
sort:基於指定的順序組織數據文件中的數據;
tail:顯示指定文件內容的末尾;
tar:將數據和目錄歸檔到單個文件中;
top:顯示任務活動進程;
touch:新建一個空文件;
whereis:顯示指定命令的相關文件;
which:查找可執行文件的位置;
who:顯示當前系統中的登錄用戶;
whoami:顯示當前用戶的用戶名

Ⅷ Bash shell 特點總結

自學Linux的過程中做了一點小總結,因此寫出來和大家分享一下,希望能共同進步!

Bash shell的特點:

1、 命令的自動補齊:Tab鍵

2、 命令的頃哪歷史記憶功能:上下鍵;!+數字可以自動找出在history中的相應命令並且執行;!+string可以自動找到最近一個以string開頭的命令並且執行;!$指的是上一個命令的最後一個參數;!!指的是上一個命令,因為在腳本中不能進行翻頁,所有常作為腳本命令執行,ctrl+R可以搜索歷史命令。

3、 別名功能:alias可以查看別名;unalias cp取消別名;~username/.bashrc可以進行永久別名的設置;\cp –rf /etc/hosts表示忽略別名

4、 快捷鍵:^R搜索歷史命令;^D登出系統;^A將游標移到命令開始;^E將游標移到命令結尾;^K將游標移到中間刪除後半部命令;^U將游標移到中間刪除前部分命令;^Y撤銷上個操作

5、 前後台作業控制 :命令之後加一個&表示將工作提交到後台執行;命令前加一個nohup可以讓該命令在終端關閉之後還可以執行;^C殺死前台正在運行的任務;^Z,將前台工作扔到後台去執行;bg展示後台正在運行的工作,也可以用jobs;fg表示將後台運行的工作調到前台運行;kill %+數字表示殺死後台某一個作業

6、 輸入輸出重定向:0表示標准輸入;1表示標准輸出;2表示標准錯誤,也就是錯誤輸出;>表示寫入某一個文件,>>表示追加寫入某一個文件;2>&1:& 表示等同於的意思,2>&1,表示2的輸出重定向等同於1,即和1重定向的文件系統上的位置是一樣的; cat << EOF > file:EOF是一個從標准輸入傳遞命令給cat的標志,執行結束的命令輸出到file文件中保存

7、 Tee管道,相當於一個三通,可以在特定地方截取管道命令的輸出信息。

管道文件不同於常用文件,管道文件就跟水一樣是一個動態的文件,每個時間點打開管道文件查看都能看到不一樣的東西,而常用文件只要不進行更改都是一樣雀猛碼的內容,另外管道文件都遵循一個原則:先進先出後進後出,顧名思義就是先被管道接受的東西首先被記錄。

另:

關於命名知含管道與匿名管道的區別:創建命名管道:mkfifo +管道名字

8、 命令排序:

不具備邏輯判斷能力:分號

具備邏輯判斷能力:&& 和 ||

注意:

Command &  後台執行

Command &>/dev/null  混合重定向

Command1 && Command2  命令排序,具備邏輯判斷能力

9、 shell通配符(元字元,即表示的不是本意)

*匹配任意多個字元

?匹配任意一個字元

[]表示匹配括弧內的任意一個字元:[abc]表示匹配abc中的任意一個,而[^abc]表示除了abc之外的任意一個字元。

(command)在子shell中執行命令

{}將幾個元素括起來表示一個集合,可以用來批量創建和刪除文件

\ 轉義字元,讓元字元回歸本意

Ⅸ shell腳本只能用bash進行解釋嗎

shell腳本不是只能用bash進行解釋。shell腳本謹爛則bash(也可換成其他命歷鏈令解釋器如sh等)scipt-name。這是當腳本文件本身沒有可執行許可權(即文件屬性x位為-)時常使用的方法,或者當文件開口沒有指定命令解釋器也可使用這種方法來決定用哪個命令解釋祥棚器來執行。這種執行shell的方法是比較推薦的,因為他可以在文件沒有執行許可權的情況下使用,也可以指定命令解釋器。

Ⅹ shell: bash和dash

兩種方法:

sudo ln -s /bin/bash /bin/sh
強制把/bin/sh的軟鏈接改到bash中。

sudo dpkg-reconfigure dash
彈出來個選擇項,把「dash設為默認shell」選擇no。

文件灶肢開頭加上 #!/bin/bash
該腳本擁有執行許可權,通過腳本名直接運行時,使用bash執行

1.定義函數

bash: function在bash中為關鍵字

dash: dash中沒有function這個關鍵字

2.select var in list; do command; done

bash:支持

dash:不支持, 替代方法:採用while+read+case來實現

bash:支持{n..m}展開

dash:不隱彎世支持,替代方法, 採用seq外部命令

bash:支持here string

dash:不支持鬧做, 替代方法:可採用here documents

bash: 當word為非數字時,>&word變成重定向標准錯誤和標准輸出到文件word

dash: >&word, word不支持非數字, 替代方法: >word 2>&1; 常見用法 >/dev/null 2>&1

bash: 支持數組, bash4支持關聯數組

dash: 不支持數組,替代方法, 採用變數名+序號來實現類似的效果

bash: 支持 {parameter:offset}

dash: 不支持, 替代方法:採用expr或cut外部命令代替

bash: 支持 {parameter^^pattern}, {parameter,,pattern}

dash: 不支持,替代方法:採用tr/sed/awk等外部命令轉換

bash: 支持進程替換

dash: 不支持, 替代方法, 通過臨時文件中轉

bash: 支持兩者

dash: 只支持=

bash: 支持[[ ]], 可實現正則匹配等強大功能

dash: 不支持[[ ]], 替代方法,採用外部命令

bash: 支持C語言格式的for循環

dash: 不支持該格式的for, 替代方法,用while+$((expression))實現

bash: 有內置命令let, 也支持((expression))方式

dash: 不支持,替代方法,採用$((expression))或者外部命令做計算

bash: 支持id++,id--,++id,--id這樣到表達式

dash: 不支持++,--, 替代方法:id+=1,id-=1, id=id+1,id=id-1

參考:
http://www.linuxfly.org/post/686/

閱讀全文

與shellbash命令相關的資料

熱點內容
splitjava空格 瀏覽:248
電腦怎麼谷歌伺服器地址 瀏覽:515
nx自定義工具啟動宏命令 瀏覽:101
程序員怎麼解決無法訪問互聯網 瀏覽:303
java訪問本地文件 瀏覽:747
瓦斯琪伺服器怎麼用 瀏覽:22
安卓主題用什麼app 瀏覽:747
修改伺服器pci地址空間 瀏覽:321
程序員將來去哪裡 瀏覽:966
虛幻5創建c無法編譯 瀏覽:189
javaweb項目設計 瀏覽:407
國家反詐app緊急聯系人怎麼填 瀏覽:191
單片機旋轉led 瀏覽:340
杜洋單片機官網 瀏覽:467
法國加密貨幣稅務 瀏覽:28
stringslinux 瀏覽:944
gis伺服器里文件如何處理 瀏覽:829
sec加密數字資產 瀏覽:930
winrar命令行壓縮 瀏覽:790
java成員變數默認 瀏覽:491