天天看點

第一部分 Shell基礎程式設計——第一章 Shell簡介

筆記

#什麼是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
           

附圖

第一部分 Shell基礎程式設計——第一章 Shell簡介
第一部分 Shell基礎程式設計——第一章 Shell簡介
第一部分 Shell基礎程式設計——第一章 Shell簡介
第一部分 Shell基礎程式設計——第一章 Shell簡介
第一部分 Shell基礎程式設計——第一章 Shell簡介

參考資料

http://viong.blog.51cto.com/844766/894408

http://blog.chinaunix.net/uid-14178996-id-2828426.html

第一部分 Shell基礎程式設計——第一章 Shell簡介
第一部分 Shell基礎程式設計——第一章 Shell簡介
第一部分 Shell基礎程式設計——第一章 Shell簡介
@Wentasy 博文僅供參考,歡迎大家來訪。如有錯誤之處,希望批評指正。原創博文如需轉載請注明出處,謝謝 :) [CSDN部落格]

繼續閱讀