筆記
#什麼是Shell
#存取權限和安全
#Shell簡單腳本
#Shell特性
#什麼是Shell
#Shell是核心程式(kernel)之外的指令解析器,是一個程式,同時是一種指令語言和程式設計語言。
#指令解析器,類似于command.com
#檢視所有Shell
[[email protected] 0321]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/bash2
/bin/ash
/bin/bsh
/bin/tcsh
/bin/csh
/bin/ksh
/bin/zsh
#獲得目前Shell
echo $SHELL
#bash shell:預設Shell
可以檢視所有的檔案占用大小
#ls –lh
#a) 第二列:硬連結數
#b) 第三列:檔案擁有者
#c) 第四列:檔案擁有者所屬組
#d) 第五列:檔案所占用的空間
#e) 第六、第七、第八:檔案最後通路時間
#f) 最後一列:檔案名
#d:檔案目錄
#b:塊裝置,一般放在/dev/下
#c:字元裝置檔案,一般放在/dev/下
#p:指令管道檔案
#s:socket檔案
指令
#獲得chmod的幫助資訊
man chmod
#獲得chmod的幫助資訊
info chmod
#myfile檔案所有者可讀可寫可執行,所在組使用者可寫,其他組使用者隻讀
chmod u=rwx,g+w,o+r myfile
#myfile檔案擁有者擁有s屬性(s:涉及安全問題)
chmod u+s myfile
#myfile檔案所在組使用者可執行,其他組使用者可執行
chmod g+x,o+x myfile
#改變myfile檔案的擁有者
chown root,wgb myfile
#myfile檔案所在組使用者擁有s屬性
chmod g+s myfile
#myfile檔案其他組使用者擁有t屬性(t:檔案運作時,放在緩存裡進行)
chmod o+t myfile
#列出bin目錄下擁有s屬性的檔案
ls -l /bin | grep '^...s'
#類似于chmod u+s myfile
chmod 4744 myfile
#類似于chmod g+s myfile
chmod 6744 myfile
#類似于chmod o+T myfile
chmod 7744 myfile
#更改enerco檔案的擁有者為root
chown root enerco
#更改enerco目錄(檔案夾内的所有子檔案夾或者子檔案)的檔案擁有者為root
chown -R root enerco/
#更改enerco檔案的組擁有者為wgb
chgrp wgb enerco
#更改檔案夾的擁有者、組擁有者為wgb
chown wgb.wgb enerco –R
#umask:(9位,分别對應檔案擁有者、組擁有者、其他組擁有者)
umask:022
#若umask為022,則檔案屬性預設為644
touch filename
#建立direactory檔案夾
mkdir direactory
#若umask為022,則檔案夾屬性預設為755
#列出direactory檔案夾的詳細資訊
ls -lda direactory
#将umask改為000
umask 000
#顯示新的umask值
umask
#建立filename1檔案
touch filename1
#建立direactory1檔案夾
ls -lda direactory1
#檢視配置檔案裡的umask值
cat /etc/profile|grep "umask"
#軟連接配接:指向檔案存儲的地方,類似于連接配接方式
#硬連接配接,enercotgz檔案同enerco.tar.gz檔案擁有相同的大小,但兩個檔案實際占的空間為一個檔案的大小
ln enerco.tar.gz enercotgz
#軟連接配接,enercolns指向enerco.tar.gz,占13位元組
ln -s enerco.tar.gz enercolns
#删除enercotgz檔案
rm -f enercotgz
#檢視系統支援的别名
alias
[[email protected] 0321]# alias
alias cp='cp -i'
alias l.='ls -d .* --color=tty'
alias ll='ls -l --color=tty'
alias ls='ls --color=tty'
alias mc='. /usr/share/mc/bin/mc-wrapper.sh'
alias mv='mv -i'
alias rm='rm -i'
alias vi='vim'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
#将ll更改為ls –alh
alias ll='ls -alh'
#列出詳細資訊,會顯示檔案占的空間總大小
ll
#将ll還原
alias ll='ls -l --color=tty'
#列出詳細資訊,會顯示所有檔案夾個檔案個數
ll
#檢視使用者的所支援的别名
cat $HOME/.bashrc
#将cat myfile的内容作為ls指令的輸入
ls `cat myfile` -al
#将tar -czf enerco.tar.gz enerco指令背景執行
nohup tar -czf enerco.tar.gz enerco &
#檢視背景任務
jobs –l
#列出排序結果
ls | sort
#列出排序結果,同上,包含詳細資訊
ls -l | sort
#将myfile.txt的結果傳遞給sort指令
sort < myfile.txt
#将将myfile.txt的結果傳遞給sort指令,然後将排序結果寫入myfile_dort.txt
sort < myfile.txt > myfile_dort.txt
#列出所有txt文檔
ls *.txt –l
#列印rtr saet
echo rtr saet
#列出所有的檔案名
echo rtr *
#建立檔案,結果建立了兩個檔案
touch testfile1 file
#建立testfile1 file檔案
touch 'testfile1 file'
#将testfile1 file改名為testfile1file,然後将testfile1file改名為chinaitlab,testfile1 file檔案、testfile1file檔案都将被删除
mv 'testfile1 file' testfile1file;mv testfile1file chinaitlab
附圖
參考資料
http://viong.blog.51cto.com/844766/894408
http://blog.chinaunix.net/uid-14178996-id-2828426.html
@Wentasy 博文僅供參考,歡迎大家來訪。如有錯誤之處,希望批評指正。原創博文如需轉載請注明出處,謝謝 :) [CSDN部落格] |