用 groups 或 id -gn 查看所有用戶組。Shell腳本:
#!/bin/sh
groups | grep "^test$" >/dev/null 2>&1
[ $? -ne 0 ] && groupadd test
exit 0
❷ shell 總共有幾個命令
$SHELL是一個環境變數,它記錄用戶所使用的Shell類型。你可以用命令: # Shell-name 來轉換到別的Shell,這里Shell-name是你想要嘗試使用的Shell的名稱,如ash等。這個命令為用戶又啟動了一個Shell,這個Shell在最初登錄的那個Shell之後,稱為下級的Shell或子Shell。 使用命令: # exit 可以退出這個子Shell。使用不同的Shell的原因在於它們各自都有自己的特點,下面做一個簡單的介紹: 1.ash ash Shell是由Kenneth Almquist編寫的,是Linux中佔用系統資源最少的一個小Shell,它只包含24個內部命令,因而使用起來很不方便。 2.bash bash是Linux系統默認使用的Shell,它由Brian Fox和Chet Ramey共同完成,是Bourne Again Shell的縮寫,內部命令一共有40個。Linux使用它作為默認的Shell是因為它有以下的特色: (1)可以使用類似DOS下面的doskey的功能,用上下方向鍵查閱和快速輸入並修改命令。 (2)自動通過查找匹配的方式,給出以某字串開頭的命令。 (3)包含了自身的幫助功能,你只要在提示符下面鍵入help就可以得到相關的幫助。 3.ksh ksh是Korn Shell的縮寫,由Eric Gisin編寫,共有42條內部命令。該Shell最大的優點是幾乎和商業發行版的ksh完全相容,這樣就可以在不用花錢購買商業版本的情況下嘗試商業版本的性能了。 4.csh csh是Linux比較大的內核,它由以William Joy為代表的共計47位作者編成,共有52個內部命令。該Shell其實是指向/bin/tcsh這樣的一個Shell,也就是說,csh其實就是tcsh。 5.zch zch是Linux最大的Shell之一,由Paul Falstad完成,共有84個內部命令。如果只是一般的用途,是沒有必要安裝這樣的Shell的。Bourne Shell (/usr/old/bin/sh)
C Shell (/usr/bin/csh)
Korn Shell (/usr/bin/ksh)
POSIX Shell (/usr/bin/sh)
①輸入一個系統不認識的命令(如#fuck_pig)獲得系統提示
②#e cho $0 (適用:sh/ksh)
③#ps |grep $$|awk 『{print $4}』
④#e cho $SHELL(用戶默認的Shell,但不實時反映當前shell)還有在你的/etc/shells中你可以看到更多的shell:
# /etc/shells: valid login shells/bin/ash/bin/csh/bin/sh/usr/bin/es
/usr/bin/ksh/bin/ksh/usr/bin/rc
/usr/bin/tcsh/bin/tcsh/usr/bin/zsh/bin/sash/bin/zsh/usr/bin/esh/bin/dash/bin/bash/bin/rbash不同的 shell 有著不同的功能,且也彼此各異、或說"大同小異"。
常見的 shell 主要分為兩大主流:sh:burne shell (sh)
❸ shell命令大全
http://www.runoob.com/linux/linux-command-manual.html
看下這個是否可以幫助到你
❹ shell命令
windows文本文檔與linux文本文檔主要的區別是斷行符不同。
可以使用cat -A 查看文檔是windows文檔還是linux文檔。windows文檔顯示的斷行符為^M$,而linux(unix)文檔斷行符為$。
可以使用dos2unix和unix2dos進行格式轉換。
假設目前有一個windows文檔file1.txt,轉換為linux文檔,命令為:dos2unix -n file1.txt file2.txt,注意-n參數是保留舊文檔,同時輸出到新文檔。
unix2dos用法與dos2unix用法類似。
❺ 如何查看shell命令代碼
如果你想看Linux Shell中的命令的源代碼,可以到GNU的官網找到並下載「coreutils」包,裡面的「src」文件下是常用的Shell命令的C語言源代碼。希望對你有幫助^_^
1
<a href="http://ftp.gnu.org/gnu/coreutils/" target="_blank">http://ftp.gnu.org/gnu/coreutils/</a>
❻ Linux的shell簡單命令,這些怎麼表示
11、取出abc和c的值,並賦值給a
5、進入當前目錄的上上一級目錄。
❼ shell命令有哪些保留字
Bash Shell內建命令和保留字
命令
含義
!
保留字,邏輯非
:
不做任何事,只做參數展開
.
讀取文件並在shell中執行它
alias
設置命令或命令行別名
bg
將作業置於後台運行
bind
將關鍵字序列與readline函數或宏捆綁
break
保留字,跳出for、while、until、select循環
builtin
調用命令的內建命令格式,而禁用同名的函數。或者同名的擴展命令
case
保留字,多重選擇
cd
切換當前工作目錄
command
找出內建和外部命令;尋找內建命令而非同名函數
continue
保留字,到達下次for、while、until、select循環
declare
聲明變數定義變數屬性
dirs
顯示當前存儲的列表
disown
將作業從列表中移除
do
保留字,for、while、until、select循環的一部分
done
保留字,for、while、until、select循環的一部分
echo
列印參數
elif
保留字,if結構的一部分
else
保留字,if結構的一部分
enable
開啟和關閉內建命令
esac
保留字,case的一部分
eval
將參數作為命令再次處理一遍
exec
以特定程序取代shell或為shell改變I/O
exit
退出shell
export
將變數聲明為環境變數
fc
與歷史命令一起運行
fg
將作業置於後台運行
fi
保留字,if循環的一部分
for
保留字,for循環的一部分
function
定義一個函數
getops
處理命令行選項
hash
記錄並指定命令的路徑名
help
顯示內建命令的幫助信息
history
顯示歷史信息
if
保留字,if循環的一部分
in
保留字,case、for、select循環的一部分
jobs
顯示後台運行的作業
kill
向進程傳送信號
let
使變數執行算術運算
local
定義局部變數
logout
從Shell中注銷
popd
從目錄棧中彈出目錄
pushd
將目錄壓入棧
pwd
顯示當前工作目錄
read
從標准輸入中讀取一行
readonly
將變數定義為只讀
return
從函數或腳本返回
select
保留字,生成菜單
set
設置Shell選項
shift
變換命令行參數
suspend
終止Shell的執行
test
評估條件表達式
then
保留字,if結構的一部分
time
保留字,輸出統計出來的命令執行時間,其輸出格式由TIMEFORMAT變數來控制
times
針對Shell及其子Shell,顯示用戶和系統CPU的時間和
trap
設置撲捉程序
type
確定命令的源
typeset
聲明變數,定義變數屬性,與declare等價
ulimit
設置和顯示進程佔用的資源限制
umask
設置和顯示文件許可權碼
unalias
取消別名定義
unset
取消變數或函數定義
until
保留字,一種循環結構
wait
等待後台作業完成
while
保留字,一種循環結構
❽ linux shell 指令 諸如-d, -f, -e之類的判斷表達式
如果 filename存在,則為真 [ -e /var/log/syslog ]-d filename
如果 filename為目錄,則為真 [ -d /tmp/mydir ]-f filename
如果 filename為常規文件,則為真 [ -f /usr/bin/grep ]-L filename
如果 filename為符號鏈接,則為真 [ -L /usr/bin/grep ]-r filename
如果 filename可讀,則為真 [ -r /var/log/syslog ]-w filename
如果 filename可寫,則為真 [ -w /var/mytmp.txt ]-x filename
如果 filename可執行,則為真 [ -L /usr/bin/grep ]filename1-nt filename2
如果 filename1比 filename2新,則為真 [ /tmp/install/etc/services -nt /etc/services ]filename1-ot filename2
如果 filename1比 filename2舊,則為真 [ /boot/bzImage -ot arch/i386
-z string 如果 string長度為零,則為真 [ -z "$myvar" ]-n string 如果 string長度非零,則為真 [ -n "$myvar" ]
string1= string2 如果 string1與 string2相同,則為真 [ "$myvar" = "one two three"]
string1!= string2 如果 string1與 string2不同,則為真 [ "$myvar" != "one two three" ]
num1-ne num2 不等於 [ 3 -ne $mynum ]num1-lt num2 小於 [ 3 -lt $mynum ]
num1-le num2 小於或等於 [ 3 -le $mynum ]num1-gt num2 大於 [ 3 -gt $mynum ]
num1-ge num2 大於或等於 [ 3 -ge $mynum ]
Linux操作系統
是基於UNIX操作系統發展而來的一種克隆系統,它誕生於1991 年的 [Linux桌面] 10 月5 日(這是第一次正式向外公布的時間)。以後藉助於Internet網路,並通過全世界各地計算機愛好者的共同努力,已成為今天世界上使用最多的一種UNIX 類操作系統,並且使用人數還在迅猛增長。
❾ shell基本命令
常用命令
一、目錄操作
a) ls--查看文件/目錄:
常用:ls –l 查看詳細文件列表
b) pwd--查看當前目錄:
c) cd--改變工作目錄:
常用①:cd ../ 跳轉到上一級目錄
備註: [./]當前目錄 [../]上一級目錄
常用②:cd /boot/ 跳轉到指定目錄
備註:指定目錄一定是完整路徑,例如win的文件路徑一樣。
d) mkdir--創建目錄:
常用:mkdir 123 創建一個空文件夾
e) rm--刪除文件/目錄:
常用: rm -rf 123 刪除目錄文件夾,並且目錄下的文件一並刪除。
備註:直接使用命令[rm],只能刪除空目錄。
-r 刪除目錄 -f 強制刪除文件或目錄
f) mv--移動文件/目錄改名、移動:
移動文件: mv 1.sh ./123 à mv 目標文件 移動至某目錄
重名命文件:mv 1.sh 123.sh à mv 原文件 欲改後文件
g) ln--建立軟連接和硬連接:
軟連接:ln -s 123.sh ../ à ln -s 源文件 欲放置路徑
如同window下的快捷方式,原理一致。
ln -s /root/桌面/共享文件夾/armQT/ /root/桌面
硬連接:ln 123.sh ../ à ln 源文件 欲放置路徑
復制一個文件,且該文件具有獨立性,不受源文件刪除的影響;無論源文件或目標文件的內容修改時,兩份文件都會同步修改。
h) rmdir--刪除空目錄:
二、文件操作
a)cat--查看文件內容,若文件不存在,創建對應文件:
常用:cat 1.txt
b)cp--拷貝文件、目錄:
備份:cp 123.sh 1.sh à cp 源文件 目標文件
復制至某路徑:cp 123.sh ../ à cp 源文件 目標路徑
c)chmod--修改文件許可權:
常用:chmod 777 1.sh 給1.sh最高許可權
備註:讀、寫、運行三項許可權可以用數字表示,就是r=4,w=2,x=1。
777就是rwxrwxrwx,意思是該登錄用戶(可以用命令id查看)、他所在的組和其他人都有最高許可權。
一般模式:chmod +rw 1.sh 僅當前用戶下1.sh具有可讀寫許可權
d)touch--創建文件:
常用:touch ./1.sh à touch 路徑+名稱
f)vim--創建並打開文件:
常用:vim ./1.sh à vim 路徑+名稱
g)find--在指定目錄查找符合條件的文件:
以[文件名+類型]尋找:find ./ -name 「*.*」à find 路徑 -nama 「預找文件名+類型」
尋找文件名為」123」的文件,*代表不限制類型
find ./ ! -name 「*.txt」 à 過濾txt類型文件後,顯示其他文件
備註:-name 區分大小寫 -iname 不區分大小寫
-o 連接符,作用如下圖
以[文件名]尋找:find ./ -path 「*1*」à find 路徑 - path 「預找文件名」
尋找文件名為」1」的所有文件
根據文件類型進行搜索:find . -type 類型參數
h)grep--在文件里查找內容:
從指定文件里查找內容:grep h ./file.txt à grep 內容 路徑
從緩存區里查找內容:ps -ef | grep 5799 à 某顯示命令 | grep 內容
(從進程列表中尋找帶有」5799」的文本行)
i)tar--解壓文件:
壓縮:
tar -cvf 1.tar *.* //將目錄里所有文件打包成1.tar
rar a 1.rar *.* //rar格式的壓縮
zip 1.zip *.* //zip格式的壓縮
解壓:
tar -xvf file.tar //解壓tar包
tar -xzvf file.tar.gz //解壓tar.gz
unrar e file.rar //解壓rar
unzip file.zip //解壓zip
j)file--顯示指定文件的類型:
三、用戶系統及許可權管理操作
a)su--用戶類型切換:
b)adser--添加用戶:
c)passwd--設置(更改)用戶口令:
d)usermod--設置用戶屬性:
e)ps--顯示當前系統用戶進程列表:
常用:ps -ef 顯示當前系統所有用戶的詳細進程
-e 顯示所有程序。 -f 顯示UID,PPIP,C與STIME欄位
-A 顯示所有程序。
f)kill--刪除執行中的進程:
常用:kill 123 à kill pid號
強制結束進程: kill -9 123 à kill -9 pid號
四、幫助命令
a)man--查詢命令閱讀手冊
man kill à 查詢有關[kill]的全部信息
man 2 kill à 只查詢第二條有關[kill]的信息
b)help--查詢命令閱讀手冊
五、網路相關命令
a)ifconfig 查看網路信息,設置ip
b)ping 測試網路聯網狀態
六、U盤操作相關命令
a)fdisk -l 識別usb存儲設備
b)mount –t vfat /dev/sdb /mnt/udisk使用mount命令掛載U盤
c)umount /mnt/udisk 卸載U盤
七、安裝軟體包命令
a)rpm
常用組合命令:
-ivh:安裝顯示安裝進度--install--verbose--hash
-Uvh:升級軟體包--Update;
-qpl: 列出RPM軟體包內的文件信息[Query Package list];
-qpi:列出RPM軟體包的描述信息[Query Package install package(s)];
-qf:查找指定文件屬於哪個RPM軟體包[Query File];
-Va:校驗所有的 RPM軟體包,查找丟失的文件[View Lost];
-e:刪除包