6.23學習日記
阿新 • • 發佈:2021-06-23
檔案處理基礎
Linux系統的目錄結構
window系統 linux系統
資料夾 目錄
window系統:多根目錄(頂級資料夾有多個)
C:\a\b\c\d.txt
D:\xxx\yyy\zzz.txt
linux系統:單根結構(頂級資料夾有一個)
/a/b/c/d.txt
絕對路徑和相對路徑
從根開始寫的路徑就是絕對路徑,否則就是相對路徑
絕對路徑:/a/b/c/1.txt #無論在哪都能找到,就是程式碼太長了用起來很麻煩
相對路徑使用:cd /a
b/c/1.txt #必須已經到同一目錄下了才能找到,但是程式碼簡單方便,開頭不能加/否則就是在根目錄下尋找
系統目錄介紹
bin(usr/bin):普通使用者可使用命令
sbin(usr/sbin):超級使用者可使用命令
boot:作業系統的核心檔案
usr:系統檔案
lib:系統檔案
lib64:系統檔案
root:root使用者的個人目錄
home:普通使用者的個人目錄
etc:各種軟體的配置檔案
"""
!!!常用配置檔案!!!
/etc/sysconfig/network-script/ifcfg-*,網路配置檔案
/etc/hostname,系統主機名配置檔案
/etc/resolv.conf,dns客戶端配置檔案
/etc/hosts,本地域名解析配置檔案
/etc/fstab 系統掛載目錄 開機自啟動掛載列表
/etc/passwd 系統使用者檔案
!!!更改主機名過程!!!
[root@localhost ~]# hostname
localhost.localdomain
[root@localhost ~]# cat /etc/hostname
localhost.localdomain
[root@localhost ~]#
[root@localhost ~]# hostnamectl set-hostname www
[root@localhost ~]# hostname
www
[root@localhost ~]# cat /etc/hostname
www
"""
/tmp:類似回收站,裡面內容定期會被刪除
run:存放程式執行後所產生的pid檔案
srv:物理裝置產生的一些檔案
sys:硬體裝置的驅動程式資訊
檔案管理基本命令
pwd
cd #切換資料夾
cd ~ #切換當前使用者的家目錄
cd - #切到上一次的資料夾
cd. #切到當前目錄
cd.. #切到上一級目錄
../.. #上一級的上一級
tree 目錄 #用樹形列出目錄下的所有檔案,不包括隱藏檔案
tree -a 目錄 #顯示所有檔案,包括隱藏檔案
tree -d 目錄 #只顯示子目錄
tree -l 1 #遍歷目錄的最大層數,-L後應該是大於0的正整數
tree -F #在執行檔案,目錄,Socket,符號連線,管道名稱名稱,各自加上"*","/","=","@","|"號。
ls #預設瀏覽當目錄
ls -l 目錄 #瀏覽目錄下的子目錄子檔名的詳細資訊(可以寫做ll)
ls -al 目錄 #瀏覽的結果中包含隱藏檔案
ls -dl 目錄 #檢視目錄(本身)
'''
第一個字元格式:說明
-:普通檔案(文字,二進位制,壓縮包, 圖片,日誌等)
d:目錄檔案(藍色)
b:裝置檔案(塊裝置)儲存裝置硬碟 /dev/sda1, /dev/sda2
c:裝置檔案(字元裝置)印表機,終端 /dev/tty1, /dev/zero
s:套接字檔案,程序間通訊(socket)
p:管道檔案
l:連結檔案(淡藍色)
注意: Linux副檔名不代表任何含義, 僅僅是為了運維人員便於識別
'''
-rw-r--r--. 1 root root 0 12月 15 14:02 a.txt
-:檔案型別為文字檔案
rw-r--r--:許可權
.:代表在selinux開啟的情況下建立的檔案
1:硬連結個數
root:屬主
root:屬組
0:檔案大小,單位位元組
12月 15 14:02:檔案建立時間
a.txt:檔名字
檔案的建立複製貼上剪下
touch #建立檔案
touch 1.txt #在相對路徑建立1.txt
touch 絕對路徑 #在絕對路徑下創造檔案
touch /{1..3}.txt #建立三個檔案
touch /{a..c}{1..3}.txt #建立a1-3,b1-3,c1-3共九個檔案
mkdir #建立資料夾
mkdir -p /aaa/bbb/bbb #在沒有上級資料夾的情況下建立資料夾並建立上上級資料夾
mkdir /aaa/{x,111,zzz} #同時建立三個資料夾分別是x,111,zzz(不能寫...因為不是一類)
mkdir /mmm /nnn #同時在更目錄下建立兩個資料夾
madir -v #會有反饋資訊
cp 源 目標 #複製檔案
cp -v 源 目標 #顯示拷貝過程的詳細資訊
cp -r 源 目標 #拷貝資料夾
cp 源 目標(檔名相同) #會提示是否覆蓋,輸入y,覆蓋成功(為什麼會提示,是因為他是系統自動建立的別名,如果使用原始命令,就不會提示。如何使用原始命令在昨天的筆記)
mv 源 目標 #剪下檔案
mv /xxx/yyy/* /text/ #只把yyy資料夾下的檔案剪下過去
檢視檔案內容
cat(看到檔案全部內容)
less(可以翻頁)
more(適合大檔案)
head(頭幾行)
tail(末尾幾行及特殊用法)
grep(檢視包含特殊字元的檔案)
cat #檢視檔案內容
cat -n #顯示行號
cat -A #提示:每一行末尾加上$(換行符)
less #上下鍵翻頁,按Q推出
more #檔案大的情況下使用,用百分比的形式去顯示,空格翻頁
head #看檔案的前十行(可在後面加-數字,就是顯示幾行)
tail #看檔案的後十行(同上)
tail -3 檔名 | head -2 #檢視檔案的倒數第二三行。原理:先檢視檔案的倒數三行再輸入到管道里,再檢視前兩行就是檢視這個問價的倒數二三行
tail -f #動態監測檔案內容(比較適合日誌)
grep #檢視包含特殊字元的檔案
ps aux |grep bash #過濾包含bash的程序
vim 路徑 #編輯檔案
有三種模式:命令模式,輸入模式,末行模式。(預設進入的是命令模式)
命令模式
dd #刪除(配和p 就是剪下)
$ #快速跳到末尾
0 #快速跳到行首
yy #複製
nyy #複製n行
p #貼上
P #(大寫P)貼上到該行的上面
U #復原上一次操作
ctrl+r #重做上一次操作
G #移動到該檔案的最後一行
nG #移動到第n行
gg #移動到這個檔案的第一行
H #螢幕最上方的第一個字元
M #螢幕中間的第一個字元
L #螢幕最下方的第一個字元
進入輸入模式:a(游標後移一位,輸入在游標之前),i(輸入在游標之前),o(游標下移一位,輸入在游標之上),O(游標上移一位,輸入在游標之下)
進入末行模式:輸入:
:w #儲存
:wq #儲存退出
:w! #強制儲存
:q #退出
:q! #強制退出
:wq! #強制退出儲存