一、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代碼,搞一個配置文件(linux自帶python2.6)
vi ~/.vimrc
vi的常見錯誤
<color = 'red'>非法編輯退出vi的時候,會產生一個 .2.txt.swp 的一個交換文件,只要這個文件存在,那么打開這個2.txt文件的時候就會有提示,不想要這個提示,刪除這個文件即可
rm -f .2.txt.swp
vi -f 2.txt 恢復到上次編輯的內容
二、文件相關指令
文件和文件夾的相關指令,創建、刪除、拷貝、移動、查看
創建:
文件: vi 文件路徑 touch 文件路徑
文件夾:mkdir 文件夾名(若文件夾存在,則不能創建)
mkdir -p dudu/haha/xixi 遞歸創建文件夾
刪除
文件:rm文件路徑 rm -f 文件路徑 強制刪除
一般都不刪除文件 一般拷貝文件
rm -f * 刪除所有文件
目錄:rmdir 目錄路徑 只能刪除空目錄
rm -rf 目錄路徑 刪除非空目錄
cp -r 源文件夾 目標文件夾
拷貝文件夾的時候可以修改
cp -r lihong jielun/ 使用原來的名字
cp -r lihong jielun/hong 修改名字
移動
mv 源文件路徑 目標文件路徑
移動的時候可以修改文件名字
移動文件夾不用加 -r 參數
查看文件
vi 就能查看
cat 文件名
-n 顯示行號
tac 文件名 倒著查看
head 文件名 默認查看文件前十行
-5 查看文件前5行
tail 文件名 默認查看文件末十行
-5 查看文件末5行
more 文件名
enter:往下走一行
空格 :往下走一頁
不能向上看,按q退出
less 文件名
enter: 往下走一行
空格:往下走一頁
按q退出
pageup 上翻頁
pagedown 下翻頁
/要查找的字符 也可以查找
三、文件系統
文件系統就是文件管理系統的簡稱,不同的文件系統存儲和讀取數據的方式都不一樣,就會導致同樣的東西,不同的文件系統來存,存的大小就不一樣。
apfs:蘋果手機的格式
常見的文件系統格式
windows:
fat
fat16 已經淘汰
fat32 經常使用,尤其在u盤領域
fat64 (exfat) 在Windows和mac都可以直接讀寫
ntfs
windows的默認系統格式
linux:
ext
ext2
ext3
ext4 目前是這個格式 不能讀寫ntfs,如果要讀寫,安裝其他軟件
mac:
hfs
hfs+ 不能寫入ntfs,如果想要寫入,需要安裝插件,該插件收費
四、用戶和組
linux是一個多用戶多組的操作系統
一個用戶能否屬于多個組 yes
一個組能否擁有多個用戶 yes
一個用戶至少必須屬于一個組,一個用戶必須擁有自己的主組,其他組稱之為附加組
用戶創建
useradd bajie
創建成功后會留下記錄 tail /etc/passwd
創建一個用戶的同時,會給當前用戶創建一個名字一模一樣的組作為該用戶的主組
給用戶添加密碼
passwd用戶名
這個操作只能在root去給某一個普通用戶設置密碼,在普通用戶下只能給自己修改密碼,不能設置其他普通用戶密碼
-d:創建用戶的時候指定家目錄,不指定會在home下面創建一個和用戶名一模一樣的目錄,一般不指定
-g:指定主組,如果不指定,默認創建一個和用戶名一模一樣的組作為主組
-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 用戶名 將家目錄一并刪除
如果操作不規范,家目錄也可手動干掉
用戶切換
center里面
su 用戶名
從root切換到普通不用密碼
從普通切換到root,需要輸入root密碼,通過exit返回上一個用戶
Ubuntu里面
不允許root直接登錄,需要配置才可以
用普通用戶登錄 sudo 指令,提示輸入密碼,這個密碼是當前用戶的密碼.
組創建
查看當前組, tail/etc/group
groupadd 組名
-g: 可以指定組 id
刪除組
groupdel 組名
【注】如果一個組是主組的話,這個組刪不掉
【注】如果一個組是一個用戶的主組,并且僅僅是這個用戶的主組,而且組名和用戶名相同,那么刪除用戶的同時,該組也就刪除了。
修改組
groupmod
-g : 修改組的id號 groupmod -g 522 dudu
-n : 修改組名 groupmod -n xixi dudu
五、文件權限
權限什么意思? 系統中,文件的權限都有哪些?
讀、寫、執行
讀:read r 寫:write w 執行:execute x
如果寫一個 - 代表沒有這個權限
權限表示
rwx ??111?? 7
rw- ??110 ??6
r-x ??101 ??5
r-- ??100 ??4
-wx ??011 ??3
-w- ??010 ??2
--x ??001 ??1
--- ??000 ??0
rwxr-xr-x
1、rwx ??2、r-x ??3、r-x
1、所屬用戶權限 2、組內用戶權限 3、組外用戶權限
權限表示法:755 ?? 777 ??644
修改權限修改組的指令不是亂用的,需要root用戶的權限才能修改,Ubuntu下需要使用sudo,centos需要切換root執行
修改權限:chmod
格式:chmod 權限 文件路徑
chmod g+w,g-x 1.txt
u:修改所屬用戶
g:修改組內用戶
o:修改組外用戶
目錄權限修改
chmod 777目錄路徑 只修改該目錄的權限
chmod -R 777 目錄路徑 遞歸修改目錄里面所有文件的權限
修改用戶:chown 用戶名 文件路徑 只修改組名
chown 用戶名:組名 文件路徑 用戶和組都修改
chown:組名 文件路徑 只修改組名
chown -R 用戶名:組名 目錄路徑 遞歸修改目錄里面所有文件
修改組:chgrp
chgrp 組名 文件路徑
chgrp -R 組名 目錄路徑 遞歸修改目錄里面所有文件的用戶和組
umask
是什么?
系統創建文件默認權限是 644
系統創建目錄默認權限是 755
目錄默認比文件多了一個可執行權限,對目錄來說,可執行就是打開目錄
umask就決定了文件和目錄的默認權限
0777-0022 = 0755 這就是默認權限,文件都少可執行權限
指定umask進行修改,將umask指定為0011
0777 - 0011 = 0766(目錄)0666(文件)
六、文件搜索
find:
用法如下:
find 在哪找 怎么找 找什么
在哪找:就是一個路徑,默認是當前路徑
怎么找:按照名字、大小、用戶、其實就是參數
-name :按照名字找
-size :按照大小找
-user :按照用戶找
-group : 按照組找
-maxdepth : 查找最大目錄級別
-mindepth:查找最小目錄級別
找什么 :1.mp3 *.txt
find / -name dudu.py
find / -size 10k 等于10k的文件
+10k 大于10k的文件
-10k 小于10k的文件
find / *.txt -user liuyan
find / -maxdepth 3 -mindepth 2 -name *.txt 找指定級別的文件