文件的幾種特殊權限
ext2/3/4對單個文件提供的額外屬性
1.lsattr --列出文件的額外屬性
2.chattr --更改文件的額外屬性
-A --鎖定access time
-a --只能夠以append的模式去修改文件內容
-i --鎖死文件,不能刪,不能重命名,不能寫
3.access time - atime
cat file
less file
more file
head file
vi file
注意:cat file一遍以後,沒做任何事情,再cat file,access time沒有效果
4.modify time - mtime
文件寫操作:
echo string > file
echo string >> file
vi file 編輯,存一下
5.chang time - ctime
該文件內容,該文件權限等
vi file 改一下
chmod u+x file
6.stat filename -查看文件或文件系統的狀態,如:atime,ctime,mtime
part 3: ACL的使用方法
access control list(訪問控制列表)
1. getfacl --獲得文件的ACL
2. setfacl --設置文件的ACL
setfacl -m|M 添加ACL
setfacl -x|X 刪除ACL
setfacl -m u:newuser1:rwx /tmp/file
以命令的方式添加
setfacl -M uglist_permission_file file
以文件的形式添加
setfacl -x u:newuser1 /tmp/file 刪除時不要含權限,不能只刪除設置權限
的一部分
setfacl -X uglist /tmp/file 設置文件中不能含權限
setfacl -R -m u:newuser1:rw /tmp/dir1
setfacl -R -x u:newuser1:rw /tmp/dir1
遞歸的添加和刪除的方法,-R需在前
setfacl -d -m u:newuser1:rw /tmp/dir1
設置默認ACL的方法
臨時的啓用ACL:
mount -o remount,acl /home
mount |grep /home (rw,acl)
固定啓動的方法:
修改/etc/fstab文件:
/dev/xxxxxxx /home ext4 default,acl 1 2
part 4: 高級文件操作命令
準備工作:head -10 /etc/passwd >> /tmp/file
1.wc --給出文件的行,多少byte,多少character, 多少words
wc -l 行數,空行也算
wc -c 多少個字符,abc....|123....,每行末尾的回車
wc -w 單詞數,以空格,TAB,換行符區分單詞,空行不是一個
words
wc -m character字符數
wc -L 最長的一列有多少列,不包含換行符
2.sort --排序命令
-r 反向排序
-n 數字排序
-u 合併同類
-t 制定分割符,默認的分割符tab
-k 指定的列
sort -t ':' -k1 file 以':'爲分割符,對文件的第1列按字母排
序
sort -t ':' -k3 -n file 按數字排
sort -t ':' -k3 -n -r file 逆向排序
sort -k4 file 文件中沒有空格,分割符等東西
sort -t ':' -k3 -u -n file 合併同類項
3.uniq --報告並忽略重複的行
-c 統計重複了的行,注意統計的爲鄰居是否相同
-i 忽略大小寫
-d 只顯示重複行
4.cut --將文件中的內容從section移除
-d --指定分割符
-f --僅僅選擇指定的列
-c --僅僅選擇指定的字符
cat file | cut -f1
cat file | cut -c1,3,4
cat file | cut -d: -f2
5.paste --合併文件
cp file file1
paste file file1 > file2 --按列合併
paste -s file file1 > file2 --按行合併
6.tee --雙向重定向,將標準輸入的內容同時打印至文件和屏幕
cat file | tee file3 --將內容同時打印至屏幕和file3
cat file | tee -a file3 --a追加模式
tee file3 --從鍵盤接收輸入,同時打印至file3
7.ln
硬鏈接: ln source_file target_file
--不能跨分區建立硬鏈接,因是使用inode來標記文件存放位置的
軟鏈接: ln -s source_file target_file
8.cat --輸出內容
9.tac --倒序輸出內容
10.diff --比較兩個文件的差異
-b 忽略空格
-i 忽略大小寫
-B 忽略空行
11.tr
tr [a-z] [A-Z] --小寫變大寫
tr [A-Z] [a-z] --大寫變小寫
tr [a-z] [A-Z] < file 將文件中的字符進行大小寫轉換
tr -d a < file --將文件中的某些字母刪除
part 5: 查找命令
1.which ->$PATH
2.whereis ->$PATH $MANPATH
3.locate --從數據庫中搜索包含特定關鍵詞的命令
locate -r 'lesson*' --搜索包含lesson的關鍵字的文件
locate -r 'iso$' --搜索以iso結尾的文件
4.find dir [option]
find /dir -type <bfcls...> --指定文件類型進行搜索
find /dir -user <username> --按用戶搜索
find /dir -group <grpname> --按組搜索
find /dir -atime|ctime|mtime --按a|c|mtime搜索
find /dir -perm +-777 --按權限進行搜索
find /dir -size +1M -size -10M
find /dir -type b -ls --搜索出並用ls顯示
find /dir -user newuser1 -exec cp {} /tmp \;
find /dir -atime +1 -exec rm {} \; 數字表示的n*24小時內|外
find /bin -size +10k -size -100k -exec cp {} ./ \;
將bin路徑下的10-100K大小的文件拷貝至當前路徑
part 6: 壓縮/解壓縮/打包
1.zip/unzip --windows/linux/unix
zip -r demo.zip dir/ --壓縮
unzip demo.zip --解壓縮
unzip demo.zip -d /tmp/newdir11 --解壓縮到某個文件夾
2.gzip/gunzip --壓縮速度快,佔用資源少,只能壓一個文件
gzip filename --對文件壓縮,生成filename.gz
gzip -r dir --遍歷dir,對其內所有文件壓縮,每個文件單獨進行壓縮
gzip -1 filename 快速壓縮
gzip -9 filename 高壓縮比壓縮
gunzip filename.gz
3.bzip2/bunzip2 --和gzip基本相同,比gzip壓縮比高
bzip2 filename
bunzip2 filename.bz2
4.tar --打包,壓縮,解壓縮
xxx.tar.gz
tar -czvf /dir/package_name.tar.gz source_dir
tar -xzvf /dir/package_name.tar.gz -C /target_dir
-c 創建
-x 解壓縮包
-z gzip
-j bzip2
-v 詳細信息
-f 文件
xxx.tar.bz2
tar -cjvf /dir/package_name.tar.gz source_dir
tar -xjvf /dir/package_name.tar.gz -C /target_dir
part 7: 源碼安裝
1.下載源代碼包:mpich2-1.4.tar.gz
去哪裏找包:www.google.com www.sourceforge.net
2.解壓縮:
tar xzvf mpich2-1.4.tar.gz
3.配置,編譯,安裝:
cd src_dir
./configure --進行類型檢查,生成Makefile
make --編譯
make install --安裝(拷貝)
--如果你安裝的路徑需要root權限,切換至root
4.後期配置:
更改系統PATH,MANPATH等環境變量
part 8: 進程管理
1.常用的進程管理命令
top
ps
pstree
pgrep
kill
pkill
killall
nice
renice
2.top
M --以內存佔用率排名
P --以CPU佔用率排名
q --退出
內容說明:
PID --進程的ID
USER --任務所有者的用戶名
PR --優先級
NI --NICE值
VIRT --虛擬內存使用量
RES --實際內存使用量
SHR --多個進程交互時的共享內存量
S --進程的狀態
D --不可中斷的睡眠進程
R --正在運行的進程
S --睡眠的進程
Z --殭屍進程,找不到爹的孤兒進程,退出不了
%CPU --CPU佔用率
%MEM --內存佔用率
TIME+ --佔用的系統CPU時間
COMMAND --進程的程序名
3.ps -aux | less
USER
PID
%CPU
%MEM
VSZ --預分配的虛擬內存量
RSS --真實分配的內存量
TTY
STAT:
< --高優先級的進程
N --低優先級的進程
s --有孩子的進程
l --上鎖的進程
+ --前臺進程
START
TIME
COMMAND
4.pstree --以樹狀結構列出所有進程
5.pgrep
pgrep -l bash --列出關鍵字bash對應的進程id
pgrep -t pts/1 --列出終端對應的進程id
pgrep -u root vsftpd --查看root用戶啓動的vsftpd進程的id
6.kill --終結一個進程
ps -aux |grep keyword --找到你想找的進程PID
kill PID
kill -15 pid
kill -9 pid
kill -l 9 --KILL
kill -l 15 --TERM
7.killall --根據完整的名字關閉進程
killall -9 bash 殺死bash相關的進程
8.pkill --以關鍵字殺死進程
pkill -9 bash
pkill -t pts/2
pkill -u root vsftpd
pkill -u newuser1 command
9.nice --修改nice值
進程的PR=老的PR+nice
1.這個數值是用來調整進程的優先級的
2.PR值越低,進程的優先級越高
3.進程的優先級可通過ps -l -p PID查看
nice -n -1 /bin/bash 對bash的nice值減1
nice -n +1 /bin/bash 對bash的nice值加1
nice --adjustment=10|-1|-10 /bin/bash --adjustment調整的開關
nice --adjustment=10 vi file 以某個nice值啓動vi file這個程序
10.renice --alter priority of running processes
renice -10 -p PID
renice +2 -p PID
例子:
vi file
ps -aux |grep file
ps -l -p PID
renice -n -10 -p PID
ps -l -p PID
Linux基本命令(三)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Linux基本操作命令
wbzjacky
2019-02-24 13:12:38
Linux 開機(腳本)啓動順序
Uchen
2019-02-24 13:53:20
如果同事暗中傷害你,應該怎麼辦?
這個饅頭有餡
2019-02-24 13:59:08
職場中,抱怨越多的員工,越被領導瞧不起!
這個饅頭有餡
2019-02-24 13:59:08
老程序員被裁,應屆生卻能月薪 1.3 萬?這你能忍?
前端高達
2019-02-24 13:48:04
遇到到處蹭吃卻從不請客吃飯的主怎麼辦?
樑軍年
2019-02-24 13:26:35
高標準機房綜合配線安裝
wbzjacky
2019-02-24 13:12:38
IPsec ***實驗
wbzjacky
2019-02-24 13:12:37
真實的模擬***綜合實驗
wbzjacky
2019-02-24 13:12:37
CISCO路由AAA的Easy ***
wbzjacky
2019-02-24 13:12:37
三層交換機的HSRP、vlan、端口聚合
wbzjacky
2019-02-24 13:12:37
CISCO訪問控制列表 企業網絡管理的必殺技
wbzjacky
2019-02-24 13:12:37