日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux在xt文件写入内容,0728linux基础内容小记

發(fā)布時間:2024/2/28 linux 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux在xt文件写入内容,0728linux基础内容小记 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

~- ?上一個工作目錄

~+ ?當(dāng)前工作目錄

touch f{1..100} 創(chuàng)建名為f1~f100的文件

touch f{a..z} ?創(chuàng)建名為fa~fz的文件

[:lower:] 任意小寫字母

[:upper:] 任意大寫字母

[:digit:] 任意數(shù)字,相當(dāng)于0-9

[:alpha:] 任意大小寫字母

[:alnum:] 任意數(shù)字或字母

[:space:] 空格

[:punct:] 標(biāo)點符號

1.顯示/var目錄下所有以l開頭,以一個小寫字母結(jié)尾,且中間出現(xiàn)至少一位數(shù)字的文件或目錄ls?/var/l*[[:digit:]]*[[:lower:]]

2.顯示/etc目錄下以任意一位數(shù)字開頭,且以非數(shù)字結(jié)尾的文件或目錄ls?/etc/[0-9]*[^0-9]

3.顯示/etc目錄下以非字母開頭,后面跟了一個字母及其他任意長度任意字符的文件或目錄ls?/etc/[^[:alpha:]][[:alpha:]]*

4.顯示/etc目錄下所有以m開頭以非數(shù)字結(jié)尾的文件或目錄ls?/etc/m*[^0-9]

5.顯示/etc目錄下所有以.d結(jié)尾的文件或目錄ls?-da?/etc/*.d

6.顯示/etc目錄下,所有的.conf結(jié)尾,且以m,n,r,p開頭的文件或目錄ls?-da?/etc/[mnrp]*.conf

touch命令

-a ?僅改變atime

-m ?僅改變mtime

-c ?文件存在則刷新,不存在也不會創(chuàng)建

-t [YY]MMDDhhmm[.ss] 改變atimemtimetouch??-t?201605051010.30?file1

cp命令

-a 歸檔,相當(dāng)于-dR --preserv=all

-d --no-dereference --preserv=links 不復(fù)制原文件,只復(fù)制鏈接名

-p 等同--preserv=mode,ownership,timestamp

-r recursive 遞歸

-v verbosecp?-r?/etc/sysconfig/?/testdir/xxx

沒有xxx目錄,則把sysconfig目錄復(fù)制到testdir下并重命名為xxxcp?-r?/etc/sysconfig/?/testdir/xxx

已存在xxx目錄,則sysconfig復(fù)制為xxx目錄中的子目錄

1.定義別名命令baketc,每天將/etc目錄下所有文件,備份到/testdir獨立的子目錄下,并要求子目錄格式 ?為backupYYYY-mm-dd,備份過程可見alias?baketc='cp?-rpv?/etc/?/tmp/testdir1/backup-`date?+%F`'

2.創(chuàng)建/testdir/rootdir目錄并復(fù)制/root所有下文件到該目錄內(nèi),要求保留原有權(quán)限cp?-R??--preserve=mode?/root/?/testdir/rootdir

建多層目錄,例mkdir?-pv?/testdir/dir1/{x,y}/{a,b}

mkdir?-pv?/testdir/dir2/{x/{a,b},y}

mkdir?-pv?/testdir/dir{3,4,5/{dir{6,7}}}

inode工作原理圖

mv 移動并重命名文件a.txt,不影響文件的用戶數(shù)據(jù)及 inode 號

它們的inode和data block是一樣的,改其中一個的內(nèi)容,另一個的內(nèi)容也隨之變化,說明它們是同一個文件,相當(dāng)于一個文件兩個名字 -rw-r--r-- 2 ? 2是鏈接數(shù)。還可以繼續(xù)做硬鏈接如ln bb cc,鏈接數(shù)隨之增加為3。

刪除如bb文件,aa和cc依然存有數(shù)據(jù),鏈接數(shù)減少為2。

創(chuàng)建硬鏈接不能跨分區(qū)或文件系統(tǒng)

不能對目錄進(jìn)行創(chuàng)建,只可對文件創(chuàng)建

有時候磁盤空間未滿,但不能創(chuàng)建文件,可能是inode耗盡

實驗耗盡inode號for?id?in?{1..204800};do?touch?f$id;echo?f$id?is?created;donewatch?-n1?'df?-i'????//?df?-i?查看inodes大小,wathc?-n1?每秒查看執(zhí)行結(jié)果

創(chuàng)建的文件即使為空,本身的元數(shù)據(jù)也會占用磁盤空間

ls -i ?// inode 不同分區(qū)的節(jié)點號有可能相同

ln -s source softlink

原始文件相對路徑:相對于軟鏈接文件路徑,而不是相對于當(dāng)前工作目錄

find?/testdir/?-samefile?/testdir/aa???//?查看路徑/testdir有相同inode的所有硬鏈接find?/testdir/?-lname?aa????//?查找在路徑/testdir下的文件aa的軟鏈接

file descriptor 文件描述符

ps aux 看到某個進(jìn)程的pid

cd /proc/PID/fd 看到有文件

當(dāng)前tty0ls?>?/dev/pts/1?????//?將ls命令的結(jié)果發(fā)送到tty1終端上了

stdinput 0

stdouput 1

stderr ? 2

BADCOMMAND 2> file ?記錄錯誤信息

正確錯誤信息都輸出在同一個文件,例:ls?/etc/issue?xxx?&>?file1

等價于ls?/etc/issue?xxx?>?file1?2>&1

(ls;pwd)>f3??????//多條命令(用括號引起來)同時執(zhí)行輸出到一個文件

ls?/testdir/?xxx?1>?right.txt?2>?fail.txt

set+C 允許覆蓋

set-C 禁止覆蓋,可以追加

echo?cenotos?|?passwd?--stdin?wang?&>?/dev/nullmail?-s?hello?user1

hi

how are you

. ? ? ? ? ? ? ? ?//以點結(jié)束

EOT

cat /var/spool/mail/user1 可以讀到郵件

或者user1登錄 ?敲命令 mail 可以收到郵件

群發(fā)郵件,將郵件內(nèi)容保存到一個文件mail.txt

mail -s tongzhi user1 < mail.txt ? 每次將user1更改用戶即可

練習(xí)題

1、將/etc/issue文件中的內(nèi)容轉(zhuǎn)換為大寫后保存至/tmp/issue.out文件中cat?/etc/issue|tr?'a-z'?'A-Z'?>?/tmp/issue.out

2、將當(dāng)前系統(tǒng)登錄用戶的信息轉(zhuǎn)換為大寫后保存至/tmp/who.out文件中echo?`who`|tr?'a-z'?'A-Z'?>?/tmp/who.out

3、一個linux用戶給root發(fā)郵件,要求郵件標(biāo)題為”help”,郵件正文如下:

Hello, I am 用戶名,the system version is here,pleasehelp me to check it ,thanks!

操作系統(tǒng)版本信息echo?-e?"I?am?`whoami`.\nThe?system?is?`cat?/etc/redhat-release?`."|mail?-s?help?root

4、將/root/下文件列表,顯示成一行,并文件名之間用空格隔開ls?-1?/root/?|tr?'\n'?'?'????//方法一

echo?$(ls?-a)??????????????????????//方法二

5、file1文件的內(nèi)容為:”1 2 3 4 5 6 7 8 9 10” 計算出所有數(shù)字的總和cat?file1?|tr?'?'?'\n'|awk?'{sum+=$1}END{print?sum}'??//方法一

i=$((`tr?"?"?"+"?

echo?'1?2?3?4?5?6?7?8?9?10'|tr?'?'?'+'|bc?????//方法三

echo?$[`echo?'1?2?3?4?5?6?7?8?9?10'|tr?'?'?'+'`]

6、刪除Windows文本文件中的'^M'字符sed?-i?"s/\^M//g"?wintxt????//方法一

cat?a.txt|tr?-d?'\015'?>?f2??再cat?-A?f2?看到?jīng)]^M了???//?^M對應(yīng)十進(jìn)制13,八進(jìn)制015?//方法二

7、處理字符串“xt.,l 1 jr#!$mn2 c*/fe3 uz4”,只保留其中的數(shù)字和空格cat?string1|tr?-d?[[:alpha:]][[:punct:]]?或

echo?'xt.,l?1?jr#!$mn2?c*/fe3?uz4'|tr?-d?-c?'[:digit:]?\n'

8、將PATH變量每個目錄顯示在獨立的一行echo?$PATH|tr?':'?'\n'

9、刪除指定文件的空行sed?/^$/d?file2?或?sed?/^[[:space:]]*$/d?file2???//方法一

cat?b.txt|tr?-s?'\n'???//方法二

10、將文件中每個單詞(字母)顯示在獨立的一行,并無空行cat?/etc/init.d/functions?|tr?-cs?'[:alpha:]'?'\n'

總結(jié)

以上是生活随笔為你收集整理的linux在xt文件写入内容,0728linux基础内容小记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。