中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

linux命令鎖文件 linux解鎖文件夾命令

Linux文件相關(guān)命令

grep命令:

目前成都創(chuàng)新互聯(lián)已為1000多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站運(yùn)營、企業(yè)網(wǎng)站設(shè)計(jì)、崖州網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

grep命令是非常重要的命令,可以對文本進(jìn)行查找和搜索

常用參數(shù)如下:

常用實(shí)例:

1、在多個(gè)文件中查找:

grep "file" file_1 file_2 file_3

2、輸出除之外的所有行 -v 選項(xiàng):

grep -v "file" file_name

3、標(biāo)記匹配顏色 --color=auto 選項(xiàng):

grep "file" file_name --color=auto

4、使用正則表達(dá)式 -E 選項(xiàng):

grep -E "[1-9]+"

egrep "[1-9]+"

5、只輸出文件中匹配到的部分 -o 選項(xiàng):

echo this is a test line. | grep -o -E "[a-z]+."

line.

echo this is a test line. | egrep -o "[a-z]+."

line.

6、統(tǒng)計(jì)文件或者文本中包含匹配字符串的行數(shù)-c 選項(xiàng):

grep -c "text" file_name

2

7、輸出包含匹配字符串的行數(shù) -n 選項(xiàng):

grep "text" -n file_name

cat file_name | grep "text" -n

8、多個(gè)文件

grep "text" -n file_1 file_2

9、搜索多個(gè)文件并查找匹配文本在哪些文件中:

grep -l "text" file1 file2 file3...

10、grep遞歸搜索文件

在多級目錄中對文本進(jìn)行遞歸搜索:

grep "text" . -r -n

11、忽略匹配樣式中的字符大小寫:

echo "hello world" | grep -i "HELLO"

hello

12、選項(xiàng) -e 指定多個(gè)匹配樣式:

echo this is a text line | grep -e "is" -e "line" -o

is

line

13、也可以使用 -f 選項(xiàng)來匹配多個(gè)樣式,在樣式文件中逐行寫出需要匹配的字符。

cat patfile

aaa

bbb

echo aaa bbb ccc ddd eee | grep -f patfile -o

14、在grep搜索結(jié)果中包括或者排除指定文件:

只在目錄中所有的.php和.html文件中遞歸搜索字符"main()"

grep "main()" . -r --include *.{php,html}

15、在搜索結(jié)果中排除所有README文件

grep "main()" . -r --exclude "README"

16、在搜索結(jié)果中排除filelist文件列表里的文件

grep "main()" . -r --exclude-from filelist

touch abc.txt 創(chuàng)建一個(gè)名為abc.txt的文件

touch -r 指定文件時(shí)間與參考文件相同

touch -t 201608012234.55[yyyymmddhhmm.ss] abc.txt 更改文件為指定的時(shí)間

touch temp 創(chuàng)建一個(gè)名為temp的文件

vi編輯器有三種模式,命令行模式、編輯模式、底行模式。

vi 文件名進(jìn)入命令行模式,Insert進(jìn)入編輯模式,編輯完成Esc退出編輯模式,:wq進(jìn)入底行模式并保存修改,:q直接退出保存。

tar命令用于打包壓縮文件,常用的壓縮命令還有bzip2,gzip

bunzip2 file1.bz2 解壓一個(gè)叫做 'file1.bz2'的文件

bzip2 file1 壓縮一個(gè)叫做 'file1' 的文件

gunzip file1.gz 解壓一個(gè)叫做 'file1.gz'的文件

gzip file1 壓縮一個(gè)叫做 'file1'的文件

gzip -9 file1 最大程度壓縮

rar a file1.rar test_file 創(chuàng)建一個(gè)叫做 'file1.rar' 的包

rar a file1.rar file1 file2 dir1 同時(shí)壓縮 'file1', 'file2' 以及目錄 'dir1'

rar x file1.rar 解壓rar包

unrar x file1.rar 解壓rar包

tar -cvf archive.tar file1 創(chuàng)建一個(gè)非壓縮的 tarball

tar -cvf archive.tar file1 file2 dir1 創(chuàng)建一個(gè)包含了 'file1', 'file2' 以及 'dir1'的檔案文件

tar -tf archive.tar 顯示一個(gè)包中的內(nèi)容

tar -xvf archive.tar 釋放一個(gè)包

tar -xvf archive.tar -C /tmp 將壓縮包釋放到 /tmp目錄下

tar -cvfj archive.tar.bz2 dir1 創(chuàng)建一個(gè)bzip2格式的壓縮包

tar -xvfj archive.tar.bz2 解壓一個(gè)bzip2格式的壓縮包

tar -cvfz archive.tar.gz dir1 創(chuàng)建一個(gè)gzip格式的壓縮包

tar -xvfz archive.tar.gz 解壓一個(gè)gzip格式的壓縮包

zip file1.zip file1 創(chuàng)建一個(gè)zip格式的壓縮包

zip -r file1.zip file1 file2 dir1 將幾個(gè)文件和目錄同時(shí)壓縮成一個(gè)zip格式的壓縮包

unzip file1.zip 解壓一個(gè)zip格式壓縮包

which命令用于用戶查找命令所有路徑

命令格式

file命令用于獲取文件屬性

命令格式

file 文件名或目錄名

命令示例:

使用說明

命令格式:cat [-AbeEnstTuv] [--help] [--version] fileName

cat file1 從第一個(gè)字節(jié)開始正向查看文件的內(nèi)容

-n 或 --number:由 1 開始對所有輸出的行數(shù)編號。

-b 或 --number-nonblank:和 -n 相似,只不過對于空白行不編號。

-s 或 --squeeze-blank:當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行。

-v 或 --show-nonprinting:使用 ^ 和 M- 符號,除了 LFD 和 TAB 之外。

-E 或 --show-ends : 在每行結(jié)束處顯示 $。

-T 或 --show-tabs: 將 TAB 字符顯示為 ^I。

-A, --show-all:等價(jià)于 -vET。

-e:等價(jià)于"-vE"選項(xiàng);

-t:等價(jià)于"-vT"選項(xiàng);

使用示例

把 textfile1 的文檔內(nèi)容加上行號后輸入 textfile2 這個(gè)文檔里

cat -n textfile1 textfile2

把 textfile1 和 textfile2 的文檔內(nèi)容加上行號(空白行不加)之后將內(nèi)容附加到 textfile3 文檔里

cat -b textfile1 textfile2 textfile3

清空 /etc/test.txt 文檔內(nèi)容

cat /dev/null /etc/test.txt

tac [filename]

從最后一行開始反向查看一個(gè)文件的內(nèi)容,ac與cat命令剛好相反,文件內(nèi)容從最后一行開始顯示,可以看出 tac 是 cat 的倒著寫。

nl [-bnw] 文件

選項(xiàng)與參數(shù):

-b: 指定行號指定的方式,主要有兩種:

-b a :表示不論是否為空行,也同樣列出行號(類似 cat -n);

-b t :如果有空行,空的那一行不要列出行號(默認(rèn)值);

-n :列出行號表示的方法,主要有三種:

-n ln :行號在熒幕的最左方顯示;

-n rn :行號在自己欄位的最右方顯示,且不加 0 ;

-n rz :行號在自己欄位的最右方顯示,且加 0 ;

-w :行號欄位的占用的位數(shù)。

more file1 查看一個(gè)長文件的內(nèi)容,支持一頁一頁翻動

運(yùn)行的時(shí)候,支持以下幾個(gè)按鍵:

空白鍵 (space):代表向下翻一頁;

Enter :代表向下翻『一行』;

/字串 :代表在這個(gè)顯示的內(nèi)容當(dāng)中,向下搜尋『字串』這個(gè)關(guān)鍵字;

:f :立刻顯示出檔名以及目前顯示的行數(shù);

q :代表立刻離開 more ,不再顯示該文件內(nèi)容。

b 或 [ctrl]-b :代表往回翻頁,不過這動作只對文件有用,對管線無用。

less file1 類似于 'more' 命令,但是它允許在文件中和正向操作一樣的反向操作

less運(yùn)行時(shí)可以輸入的命令有:

空白鍵 :向下翻動一頁;

[pagedown]:向下翻動一頁;

[pageup] :向上翻動一頁;

/字串 :向下搜尋『字串』的功能;

?字串 :向上搜尋『字串』的功能;

n :重復(fù)前一個(gè)搜尋 (與 / 或 ? 有關(guān)!)

N :反向的重復(fù)前一個(gè)搜尋 (與 / 或 ? 有關(guān)!)

q :離開 less 這個(gè)程序;

head [-n number]

head -2 file1 查看一個(gè)文件的前兩行

tail [-n number]

tail -2 file1 查看一個(gè)文件的最后兩行

tail -f /var/log/messages 實(shí)時(shí)查看被添加到一個(gè)文件中的內(nèi)容

文件權(quán)限列中三位為一組,分別代表相關(guān)的用戶、組、其它用戶的權(quán)限

權(quán)限列中三位為一組,分別代表相關(guān)的用戶、組、其它用戶的權(quán)限

所以修改權(quán)限可以分別修改或一同修改,系統(tǒng)中權(quán)限分為數(shù)字權(quán)限與字符權(quán)限

數(shù)字權(quán)限:r=4,w=2,x=1

字符權(quán)限:+ 增加 -去除 a取消所有加上給定的

修改權(quán)限的命令chmod,命令格式:

chmod 權(quán)限 文件名或目錄名 修改權(quán)限格式

chmod -R 權(quán)限 目錄名 遞歸將目錄及其下面所有內(nèi)容權(quán)限全部修改

chown 改變文件或目錄的屬主(所有者)

chown 用戶名 文件名或目錄名

chown 用戶名.組名 文件名或目錄名

修改所屬組也可用chgrp 命令來完成

當(dāng)你用ls -l 查看到文件的屬主、屬組為數(shù)字時(shí),就表明該文件的創(chuàng)建用戶已被刪除。

文件的特殊權(quán)限

chattr +i(-i) 文件名 鎖定文件(取消鎖定)不可刪除與清空

chattr +a(-a) 文件名 添加內(nèi)容(只可添加內(nèi)容)

使用lsattr 文件名 查看文件的特殊權(quán)限

由此可以看出

root用戶默認(rèn)創(chuàng)建的目錄權(quán)限是755,文件權(quán)限是644

普通用戶默認(rèn)創(chuàng)建的目錄權(quán)限是775,文件權(quán)限是664

這也是系統(tǒng)默認(rèn)的比較安全的權(quán)限分配,其實(shí)這些默認(rèn)權(quán)限全部都是由umask值來決定的

系統(tǒng)規(guī)定了

文件的權(quán)限值是從666開始計(jì)算(默認(rèn)權(quán)限=權(quán)限值-umask值)

目錄的權(quán)限值是從777開始計(jì)算(默認(rèn)權(quán)限=權(quán)限值-umask值)

文件1的權(quán)限=444 (666-232=434——43(3+1)4)

Linux 下三種文件鎖 —— fcntl/lockf、flock

因?yàn)槲募i的事踩了點(diǎn)坑(還是在生產(chǎn)環(huán)境),花時(shí)間了解整理了一下。以下結(jié)論基本經(jīng)過 demo 驗(yàn)證,先簡略寫寫結(jié)論,總結(jié)總結(jié)歷史,有空再補(bǔ)其他的。

Linux下怎么創(chuàng)建鎖文件及相關(guān)命令

方法鎖文件僅僅是充當(dāng)一個(gè)指示器的角色,程序間需要通過相互協(xié)作來使用它們。鎖文件只是建議性鎖,與此對立的是強(qiáng)制性鎖。 為創(chuàng)建一個(gè)用作指示器的文件,我們使用帶O_CREATE和O_EXCL標(biāo)志的open系統(tǒng)調(diào)用。這將使我們以一個(gè)原子操作同時(shí)完成兩項(xiàng)工作:確定文件不存在,然后創(chuàng)建它。 實(shí)現(xiàn)//file : lock.c #i nclude #i nclude #i nclude #i nclude #i nclude int main(){int file_desc; int save_errno; file_desc = open(/tmp/LockFile.test, O_RDWR   O_CREAT   O_EXCL, 0444); if (file_desc 0){save_errno = errno; printf(Open failed with error is %dn, save_errno);}else {printf(Open succeededn);}exit(EXIT_SUCCESS);}第一次運(yùn)行程序:$ lock輸出如下: Open succeeded 我們再次運(yùn)行程序:$ lock輸出如下: Open failed with error is 17分析:第一次運(yùn)行程序時(shí),由于文件并不存在,所以執(zhí)行成功。對于后續(xù)的執(zhí)行,因?yàn)槲募呀?jīng)存在而失敗了。若想程序再次執(zhí)行成功,必須刪除鎖文件。 在Linux系統(tǒng)中,通常錯(cuò)誤號碼17代表的是EEXIST,此錯(cuò)誤用以表示一個(gè)文件已存在。錯(cuò)誤號定義在頭文件errno.h或(更常見的)它所包含的頭文件中。

Linux chattr 鎖定文件命令,導(dǎo)致文件root用戶都不能寫入問題

chattr 命令更改文件權(quán)限,比chmod 更強(qiáng)大,+ 移除某個(gè)權(quán)限 - 刪除某個(gè)權(quán)限 ,對于某些文件不想被修改,可使用此命令,來禁止

chattr 有一些參數(shù),簡單看下

假如 你在輸入 chattr -i /root/.ssh/authorized_keys 的時(shí)候提示你沒有chattr 這個(gè)命令,這個(gè)時(shí)候你需要安裝此命令,具體操作如下:

即可解除此文件 不能寫入的問題

linux里的文件夾上有個(gè)鎖頭的圖標(biāo),表示什么

Linux中帶鎖的文件夾圖標(biāo)表示沒有權(quán)限訪問該文件夾。取消linux文件上面的小鎖頭方法:

1、首先點(diǎn)擊任務(wù)欄上面的≥,或者是在桌面空白處不要點(diǎn)擊任何軟件。

2、按一下鼠標(biāo)右鍵,選擇終端打開。

3、打開終端后看到@前面有個(gè)名字,這個(gè)就是自己的用戶名。

4、接著輸入命令:sudochown+名字。

5、把這個(gè)帶有鎖頭的文件拖入到命令后面,按鍵盤回車鍵。

6、接著輸入管理員密碼,這鎖頭就消失不見了。

分享題目:linux命令鎖文件 linux解鎖文件夾命令
分享URL:http://m.rwnh.cn/article30/hiiipo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站小程序開發(fā)、外貿(mào)建站動態(tài)網(wǎng)站、網(wǎng)站制作、全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
柳林县| 五峰| 志丹县| 平武县| 石柱| 息烽县| 大港区| 白玉县| 临沭县| 和田县| 吕梁市| 新丰县| 电白县| 都昌县| 永新县| 彭州市| 铜鼓县| 锡林郭勒盟| 涟水县| 米脂县| 读书| 淮南市| 郑州市| 唐山市| 睢宁县| 阿图什市| 浙江省| 弥渡县| 信阳市| 广灵县| 黑山县| 孟津县| 德江县| 迁西县| 绵竹市| 平遥县| 菏泽市| 达孜县| 丹凤县| 巴里| 华亭县|