mkdir /home/app #在home目錄新增app目錄
創(chuàng)新互聯(lián)主營(yíng)樂(lè)山網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,手機(jī)APP定制開(kāi)發(fā),樂(lè)山h5成都小程序開(kāi)發(fā)搭建,樂(lè)山網(wǎng)站營(yíng)銷(xiāo)推廣歡迎樂(lè)山等地區(qū)企業(yè)咨詢(xún)
mkdir -p /home/app/test #在/home/app目錄新增test目錄,如果app目錄不存在,則創(chuàng)建
(要注意絕對(duì)路徑和相對(duì)路徑的區(qū)別,絕對(duì)路徑,根路徑從/開(kāi)始)
cd / #進(jìn)入根目錄
cd /service #進(jìn)入 '/ service' 目錄
cd .. #返回上一級(jí)目錄
cd ../.. #返回上兩級(jí)目錄
cd - #返回上次所在的目錄
rm readme.txt #刪除readme.txt文件,刪除前會(huì)需要確認(rèn)
rm -f readme.txt #刪除readme.txt文件,無(wú)需確認(rèn),強(qiáng)制刪除
rm -rf /home/app/* #遞歸刪除目錄下所有文件,無(wú)需確認(rèn),強(qiáng)制刪除(刪除文件夾要加參數(shù) -r)
touch /home/readme.txt #在home目錄新增readme.txt文件
vi /home/readme.txt #普通文本編輯
vim /home/readme.txt #格式化編輯,適合編輯代碼等文件
mv readme.txt /service #將readme.txt文件移動(dòng)到/service
cp readme.txt /service #將readme.txt文件復(fù)制到/service
cp -r /home/app /service #將app目錄復(fù)制到service
cat readme.txt #查看文件內(nèi)容
head -n 2 readme.txt #查看文件前兩行
tail -n 2 readme.txt #查看文件后兩行
find / -name readme #從根目錄查找名字包含為readme的文件
find /service -name readme #從某目錄查找名字包含為readme的文件
grep 關(guān)鍵字 /service/readme.txt #檢索readme.txt中存在關(guān)鍵字的行文本
-A :所有的進(jìn)程均顯示出來(lái)
-a :不與terminal有關(guān)的所有進(jìn)程
-u :有效用戶(hù)的相關(guān)進(jìn)程
-x :一般與a參數(shù)一起使用,可列出較完整的信息
-l :較長(zhǎng),較詳細(xì)地將PID的信息列出
ps aux #查看所有用戶(hù)有效進(jìn)程的詳細(xì)信息
ps aux | grep docker #查看與docker有關(guān)進(jìn)程的詳細(xì)信息
kill -9 pid (-9表示強(qiáng)制關(guān)閉,一般先通過(guò)ps aux 找到進(jìn)程pid)
linux下的性能分析工具,能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用狀況,按m 表示按內(nèi)存占用排序,按c 表示按cpu占用排序(按 Ctrl+c 退出)
top
netstat -tln
df -h
free -m #以兆為單位顯示,-h的話就是以G為單位
一、cd命令(切換目錄 )
(1)切換到目錄 /usr/local
cd /usr/local
(2)去到目前的上層目錄
cd ..
(3)回到自己的主文件夾
cd ~
二、ls命令(查看文件與目錄)
(4)查看目錄/usr下所有的文件
cd /usr ls -al
三、mkdir命令(新建新目錄 )
(5)進(jìn)入/tmp目錄,創(chuàng)建一個(gè)名為a的目錄,并查看有多少目錄存在
cd /tmp
mkdir a ls -al
(6)創(chuàng)建目錄a1/a2/a3/a4
mkdir -p a1/a2/a3/a4
四、?rmdir命令(刪除空的目錄)
(7)將上例創(chuàng)建的目錄a(/tmp下面)刪除
rmdir a
(8)刪除目錄a1/a2/a3/a4,查看有多少目錄存在
rmdir -p a1/a2/a3/a4
ls -al
五、cp命令(復(fù)制文件或目錄 )
(9)將主文件夾下的.bashrc復(fù)制到/usr下,命名為bashrc1
sudo cp ~/.bashrc /usr/bashrc1
(10)在/tmp下新建目錄test,再?gòu)?fù)制這個(gè)目錄內(nèi)容到/usr
cd /tmp
mkdir test
sudo cp -r /tmp/test /usr
六、mv命令(移動(dòng)文件與目錄,或更名)
(11)將上例文件bashrc1移動(dòng)到目錄/usr/test
sudo mv /usr/bashrc1 /usr/test
(12)將上例test目錄重命名為test2
sudo mv /usr/test /usr/test2
七、rm命令:移除文件或目錄
(13)將上例復(fù)制的bashrc1文件刪除
sudo rm /usr/test2/bashrc1
(14)將上例的test2目錄刪除
sudo rm -r /usr/test2
八、cat命令:查看文件內(nèi)容
(15)查看主文件夾下的.bashrc文件內(nèi)容
cat ~/.bashrc
九、tac命令:反向列示
(16)反向查看主文件夾下.bashrc文件內(nèi)容
tac ~/.bashrc
十、more命令:一頁(yè)一頁(yè)翻動(dòng)查看
(17)翻頁(yè)查看主文件夾下.bashrc文件內(nèi)容
more ~/.bashrc
十一、head命令:取出前面幾行
(18)查看主文件夾下.bashrc文件內(nèi)容前20行
head -n 20 ~/.bashrc
(19)查看主文件夾下.bashrc文件內(nèi)容,后面50行不顯示,只顯示前面幾行
head -n -50 ~/.bashrc
十二、tail命令:取出后面幾行
(20)查看主文件夾下.bashrc文件內(nèi)容最后20行
tail -n 20 ~/.bashrc
(21) 查看主文件夾下.bashrc文件內(nèi)容,只列出50行以后的數(shù)據(jù)
tail -n +50 ~/.bashrc
十三、touch命令:修改文件時(shí)間或創(chuàng)建新文件
(22)在/tmp下創(chuàng)建一個(gè)空文件hello并查看時(shí)間
cd /tmp
touch hello ls -l hello
(23)修改hello文件,將日期調(diào)整為5天前
touch -d “5 days ago” hello
十四、chown命令:修改文件所有者權(quán)限
(24)將hello文件所有者改為root帳號(hào),并查看屬性
sudo chown root /tmp/hello
ls -l /tmp/hello
十五、find命令:文件查找
(25)找出主文件夾下文件名為.bashrc的文件
find ~ -name .bashrc
十六、tar命令:壓縮命令
(26)在/目錄下新建文件夾test,然后在/目錄下打包成test.tar.gz
sudo mkdir /test
sudo tar -zcv -f /test.tar.gz test
(27)解壓縮到/tmp目錄
sudo tar -zxv -f /test.tar.gz -C /tmp
十七、grep命令:查找字符串
(28)從~/.bashrc文件中查找字符串'examples'
grep -n 'examples' ~/.bashrc
我對(duì)linux的新建命令的認(rèn)知還停留在新建文件夾的命令“mkdir+空格+新建文件名”。好像對(duì)新建文件的命令筆記比較模糊。
在21天小打卡中得知,新建文件的三個(gè)命令為: “touch,echo和cp” 。
當(dāng)我看到這兩個(gè)命令時(shí),意識(shí)到了自己對(duì)linux命令認(rèn)知的局限性。touch用的太少,沒(méi)什么概念,對(duì)于“echo”,是向某個(gè)文件中輸入內(nèi)容,而“cp”,我的認(rèn)知還停留在復(fù)制上。
新建文件具體用法是:
touch:“touch+空格+目標(biāo)路徑名/新建文件名”
新建文件命令:“touch,echo和cp”,拓展了我對(duì)于新建文件的認(rèn)知。另外有兩點(diǎn)也是蠻有意思的。
1.如果對(duì)新建文件的目錄結(jié)構(gòu)比較熟悉,可以直接輸入目標(biāo)路徑和新建文件名進(jìn)行新增。工作中用的比較多是,cd到某個(gè)文件夾進(jìn)行新增。直接輸入目標(biāo)路徑,這種新增方法更方便快捷,要求的是對(duì)文件結(jié)構(gòu)比較熟悉。
2.使用echo的“”和“”的區(qū)別?!啊睘椋?“輸出追加重定向” ,“”叫 “輸出重定向” 。兩者的區(qū)別在于,當(dāng)文件中有內(nèi)容時(shí)是否會(huì)覆蓋原來(lái)的內(nèi)容。具體是: 如果不覆蓋原來(lái)存在的內(nèi)容,追加新內(nèi)容,使用“” ;
linux中將一個(gè)文件放到一個(gè)文件夾中可以使用mv命令或者cp命令:1,mv命令是移動(dòng)或更名現(xiàn)有的文件或目錄;用法為mv文件名或者文件夾名需要移動(dòng)到的路徑例如:mvtest.txt/usrmv的常用參數(shù):-b或--backup 若需覆蓋文件,則覆蓋前先行備份。-f或--force 若目標(biāo)文件或目錄與現(xiàn)有的文件或目錄重復(fù),則直接覆蓋現(xiàn)有的文件或目錄。-i或--interactive 覆蓋前先行詢(xún)問(wèn)用戶(hù)。-u或--update 在移動(dòng)或更改文件名時(shí),若目標(biāo)文件已存在,且其文件日期比源文件新,則不覆蓋目標(biāo)文件。2,cp命令是復(fù)制文件或目錄:用法為cp文件名或者文件夾名需要移動(dòng)到的路徑例如:cptest.txt/usrcptest.txttest2.txt/bin/test3.txt/usrcp指令用在復(fù)制文件或目錄,如同時(shí)指定兩個(gè)以上的文件或目錄,且最后的目的地是一個(gè)已經(jīng)存在的目錄,則它會(huì)把前面指定的所有文件或目錄復(fù)制到該目錄中。若同時(shí)指定多個(gè)文件或目錄,而最后的目的地并非是一個(gè)已存在的目錄,則會(huì)出現(xiàn)錯(cuò)誤信息。常用參數(shù):-a或--archive 此參數(shù)的效果和同時(shí)指定"-dpR"參數(shù)相同。-b或--backup 刪除,覆蓋目標(biāo)文件之前的備份,備份文件會(huì)在字尾加上一個(gè)備份字符串。-d或--no-dereference 當(dāng)復(fù)制符號(hào)連接時(shí),把目標(biāo)文件或目錄也建立為符號(hào)連接,并指向與源文件或目錄連接的原始文件或目錄。-f或--force 強(qiáng)行復(fù)制文件或目錄,不論目標(biāo)文件或目錄是否已存在。-i或--interactive 覆蓋既有文件之前先詢(xún)問(wèn)用戶(hù)。-l或--link 對(duì)源文件建立硬連接,而非復(fù)制文件。-p或--preserve 保留源文件或目錄的屬性。-P或--parents 保留源文件或目錄的路徑。-r 遞歸處理,將指定目錄下的文件與子目錄一并處理。-R或--recursive 遞歸處理,將指定目錄下的所有文件與子目錄一并處理。-s或--symbolic-link 對(duì)源文件建立符號(hào)連接,而非復(fù)制文件。-S或--suffix= 用"-b"參數(shù)備份目標(biāo)文件后,備份文件的字尾會(huì)被加上一個(gè)備份字符串,預(yù)設(shè)的備份字尾字符串是符號(hào)"~"。-u或--update 使用這項(xiàng)參數(shù)后只會(huì)在源文件的更改時(shí)間較目標(biāo)文件更新時(shí)或是 名稱(chēng)相互對(duì)應(yīng)的目標(biāo)文件并不存在,才復(fù)制文件。-V或--version-control= 用"-b"參數(shù)備份目標(biāo)文件后,備份文件的字尾會(huì)被加上一個(gè)備份字符串,這字符串不僅可用"-S"參數(shù)變更,當(dāng)使用"-V"參數(shù)指定不同備份方式時(shí),也會(huì)產(chǎn)生不同字尾的備份字串。-x或--one-file-system 復(fù)制的文件或目錄存放的文件系統(tǒng),必須與cp指令執(zhí)行時(shí)所處的文件系統(tǒng)相同,否則不予復(fù)制。
新增的目錄名稱(chēng) 以及位置 使用cd進(jìn)行查找切換
cd /home 進(jìn)入 '/ home' 目錄'
cd .. 返回上一級(jí)目錄
cd ../.. 返回上兩級(jí)目錄
mkdir命令的格式是 mkdir [options] 目錄名
主要的參數(shù)有
-m 設(shè)定權(quán)限模式,與chmod類(lèi)似
-p 需要時(shí)創(chuàng)建上層目錄,如果目錄已存在,則不認(rèn)為是錯(cuò)誤-v 每次創(chuàng)建新目錄都顯示信息