一舞萄、vi
- 字符串查找(常用)
:/要查找的字符串 敲enter開始查找 n代表下一個 N代表上一個
從上往下找
?/要查找的字符串 敲enter開始查找 n代表下一個 N代表上一個
從下往上找 - 字符串替換
光標所在行
:s/孤單/幸福 將光標所在行的第一個孤單替換為幸福
:s/孤單/幸福/g 將光標所在行的所有孤單替換為幸福
指定行
:n,ms/孤單/幸福 將n到m行第一個孤單替換為幸福
:n,ms/孤單/幸福/g 將n到m行所有孤單替換為幸福
所有行
:%s/孤單/幸福
:%s/孤單/幸福/g - vi打開快捷到某行
vi lala.txt +n 打開文件默認到第n行行首
vi lala.txt + 打開文件默認到尾行行首
vi的配置文件
.vimrc 如果想用vi來寫python代碼眨补,搞一個配置文件
vi ~/.vimrc
vi的常見錯誤
非法編輯退出vi的時候倒脓,會產(chǎn)生一個 .2.txt.swp 的一個交換文件撑螺,只要有這個文件存在, 那么打開這個文件的時候就會有提示,不想要這個提示崎弃,刪除這個文件即可
rm -f .2.txt.swp
vi -r 2.txt 恢復(fù)到上次編輯的內(nèi)容
二、文件相關(guān)指令
文件和文件夾的相關(guān)指令饲做,創(chuàng)建线婚、刪除、拷貝盆均、移動塞弊、查看
- 創(chuàng)建:
文件: vi 文件路徑 touch 文件路徑
文件夾: mkdir 目錄路徑 創(chuàng)建指定的目錄
mkdir -p dudu/haha/xixi 遞歸創(chuàng)建目錄 - 刪除
文件: rm 文件路徑 rm -f 文件路徑 強制刪除
一般都不刪除文件,一般都是備份一下缀踪,編輯新的文件
通配符:*
rm -f *.txt 刪除所有txt文件
rm -f * 刪除所有文件
目錄:rmdir 目錄路徑 只能刪除空目錄
rm -rf 目錄路徑 刪除非空目錄 - 拷貝
cp 源文件路徑 目標文件路徑
拷貝文件的時候可以修改名字
cp -r 源文件夾 目標文件夾
拷貝文件夾的時候可以修改
cp -r lihong jielun/ 使用原來的名字
cp -r lihong jielun/hong 修改名字 - 移動
mv 源文件路徑 目標文件路徑
移動的時候可以修改文件名字
移動文件夾不用加 -r 參數(shù) - 查看文件
vi就能查看
cat 文件名
-n 顯示行號
tac 文件名 倒著查看
head 文件名 默認查看文件前十行
-5 查看文件前五行
tail 文件名 默認查看文件后十行
-5 查看文件后五行
more 文件名
enter : 往下走一行
空格 : 往下走一頁
不能向上看居砖,按q退出
less 文件名
enter : 往下走一行
空格 : 往下走一頁
按q退出
pageup 上翻頁
pagedown 下翻頁
/要查找的字符 也可與查找
三驴娃、文件系統(tǒng)
文件系統(tǒng)就是文件管理系統(tǒng)的簡稱,不同的文件系統(tǒng)存儲和讀取數(shù)據(jù)的方式都不一樣循集,就會導(dǎo)致同樣的東西唇敞,不同的文件系統(tǒng)來存咒彤,存的大小不一樣
apfs:蘋果手機的格式
- 常見的文件系統(tǒng)格式
windows:
fat
fat16 已經(jīng)淘汰
fat32 經(jīng)常使用疆柔,尤其在u盤領(lǐng)域
fat64 (exfat) 在windows和mac都可以直接讀寫
ntfs
windows的默認系統(tǒng)格式
linux:
ext
ext2
ext3
ext4 目前是這個格式 不能讀寫ntfs,如果要讀寫镶柱,安裝其他軟件
mac:
hfs
hfs+ 不能寫入ntfs,如果想要寫入歇拆,需要安裝插件鞋屈,該插件收費
四范咨、用戶和組
linux是一個多用戶多組的操作系統(tǒng)
一個用戶能否屬于多個組 yes
一個組能否擁有多個用戶 yes
一個用戶至少必須屬于一個組,一個用戶必須擁有自己的主組厂庇,其他組稱之為附加組用戶創(chuàng)建
useradd bajie
創(chuàng)建成功之后會留下記錄渠啊, tail /etc/passwd
創(chuàng)建一個用戶的同時,會給當(dāng)前用戶創(chuàng)建一個名字一模一樣的組作為該用戶的主組
給用戶添加密碼
passwd 用戶名
這個操作只能在root去給某個普通用戶設(shè)置密碼权旷,在普通用戶下只能給自己修改密碼,不能設(shè)置其他普通用戶密碼
-d : 創(chuàng)建用戶的時候指定家目錄拄氯,不指定會在home下面創(chuàng)建一個和用戶名一模一樣的目錄躲查,一般不指定
-g : 指定主組,如果不指定译柏,默認創(chuàng)建一個和用戶名一模一樣的組作為主組
-G : 指定附加組
-u :指定用戶id 一般都不用
用戶修改
usermod
-g : 修改主組
usermod -g 501 bajie 修改bajie主組
-l : 修改用戶名
usermod -l wuneng bajie 將bajie用戶名修改為wuneng
-u : 修改用戶id
usermod -u 505 wuneng 將wuneng用戶id修改為505
-d : 修改家目錄
usermod -d /home/lala wuneng 不用用戶刪除
userdel
userdel 用戶名 只刪除文件中的記錄
userdel -r 用戶名 將家目錄一并刪除
如果操作不規(guī)范熙含,家目錄也可手動干掉用戶切換
centos里面
su 用戶名
從root切換到普通不用密碼
從普通切換到root,需要輸入root的密碼艇纺,通過exit返回上一個用戶
這里面不能sudo,因為不支持黔衡,如果要支持蚓聘,需要相關(guān)配置Ubuntu里面
不允許root直接登錄,需要配置才可以盟劫。
用普通用戶登錄夜牡。 sudo 指令,提示輸入密碼侣签,這個密碼是當(dāng)前用戶的密碼組創(chuàng)建
查看當(dāng)前組塘装, tail /etc/group
groupadd 組名
-g : 可以指定組id刪除組
groupdel 組名
【注】如果一個組是主組的話影所,這個組刪不掉
【注】如果一個組是一個用戶的主組蹦肴,并且僅僅是這個用戶的主組,而且組名和用戶名相同猴娩,那么在刪除用戶的同時,該組也就刪除了修改組
groupmod
-g : 修改組的id號 groupmod -g 513 dudu
-n : 修改組名 groupmod -n xixi dudu
五卷中、文件權(quán)限
權(quán)限什么意思矛双?系統(tǒng)中,文件的權(quán)限都有哪些蟆豫?讀议忽、寫、執(zhí)行
讀:read r 寫:write w 執(zhí)行:execute x
如果寫一個-代表沒有這個權(quán)限
權(quán)限表示
rwx 111 7
rw- 110 6
r-x 101 5
r-- 100 4
-wx 011 3
-w- 010 2
--x 001 1
--- 000 0
rwx r-x r-x
所屬用戶權(quán)限 組內(nèi)用戶權(quán)限 組外用戶權(quán)限
權(quán)限表示法:0755 0777 0644
修改權(quán)限修改組的指令不是亂用的十减,需要root用戶的權(quán)限才能修改栈幸,Ubuntu下需要使用sudo,centos需要切換root執(zhí)行
修改權(quán)限:chmod
格式 chmod 權(quán)限 文件路徑
chmod 755 1.txt
chmod g+w,g-x 1.txt
u : 修改所屬用戶
g : 修改組內(nèi)用戶
o : 修改組外用戶
目錄權(quán)限修改
chmod 777 目錄路徑 只修改該目錄的權(quán)限
chmod -R 777 目錄路徑 遞歸修改目錄里面所有文件的權(quán)限
修改用戶:chown
chown 用戶名 文件路徑 只修改用戶名
chown 用戶名:組名 文件路徑 用戶和組都修改
chown :組名 文件路徑 只修改組名
chown -R 用戶名:組名 目錄路徑 遞歸修改目錄里面所有文件的用戶和組
修改組:chgrp
chgrp 組名 文件路徑
chgrp -R 組名 目錄路徑 遞歸修改
umask
是什么侦镇?
系統(tǒng)創(chuàng)建文件默認權(quán)限是 644
系統(tǒng)創(chuàng)建目錄默認權(quán)限是 755
目錄默認比文件多了一個可執(zhí)行權(quán)限灵疮,對目錄來說,可執(zhí)行就是打開目錄
umask就決定了文件和目錄的默認權(quán)限
0777-0022 = 0755 這就是默認權(quán)限壳繁,文件都少可執(zhí)行權(quán)限
指定umask進行修改震捣,將umask指定為0011
0777-0011 = 0766(目錄) 0666(文件)
六、文件搜索
-
find
用法如下:
find 在哪找 怎么找 找什么
在哪找:就是一個路徑闹炉,默認是當(dāng)前路徑
怎么找:按照名字蒿赢、大小渣触、用戶羡棵,其實就是參數(shù)
-name : 按照名字找
-size : 按照大小找
-user : 按照用戶找
-group : 按照組找
-maxdepth : 查找最大目錄級別
-mindepth : 查找最小目錄級別
找什么:1.mp3 *.txtfind / -name dudu.py
find / -size 10k 等于10k的文件
+10k 大于10k的文件
-10k 小于10k的文件
find / *.txt -user liuyan
find / -maxdepth 3 -mindepth 2 -name *.txt 找指定級別的文件