Linux vim&用戶管理

 

##cd切換工作目錄##


cd directory //切換工作目錄到指定目錄

cd - //切換工作目錄到之前所在目錄

cd ~ //切換到自己的家目錄

cd ~usernmae //切換到指定用戶家目錄

cd .. //進入到當前目錄的上級目錄

 

## ls 列出目錄或文件信息 ##


ls //如果後面沒有目標那麼默認目標爲當前目錄
ls direcory|filename //列出文件或目錄內容
ls -d direcotry //列出目錄本身
ls -l filename|dorectory //列出文件或目錄裏面內容的屬性
ls -ld directory //列出目錄本身屬性
ls -a //顯示目錄中的所有內容,包括以"."開頭的隱藏文件
ls -R //遞歸顯示目錄中的內容

 

 

 

 


## cp 文件複製 ##


cp file file1 file2 ... directory //把file file1 file2 複製到 directory中
cp file test //建立test文件模板爲file
cp -r directory direcotry1 //複製目錄

 

 

 


## mv 移動或重命名 ##


相同磁盤的mv是重命名,不同磁盤的mv是複製刪除過程

mv file file1 direcotry //移動file file1到directory中
mv 存在文件 不存在文件 //重命名文件
mv westos/linux . //把westos中的linux移動到當前目錄 .代表當前目錄

 

 

 

 

 

##vim文本編輯##

1.vim有三種模式
命令模式
插入模式
退出模式
2.vim  filename       //進入命令模式除目錄和文件
命令模式不能編輯文件,如果要編輯文件要進入插入模式
"i"進入插入模式
如果完成編輯,按”esc“退出插入模式,輸入”:wq“ 保存退出;

3.vim命令模式下配置vim的工作方式

:set nu //行號添加
:set nonu //行號取消
:set mouse=a //添加鼠標選擇
:set cusorline //行線顯示
以上操作只能在當前打開的vim中生效,想要永久生效需要編輯/etc/vimrc文件

4.vim命令模式下關鍵字搜索
/關鍵字
n向下匹配
N向上匹配
5.vim命令模式下字符的管理
字符複製
yl //複製一個字母
y3l //複製3個字母
yw //複製一個單詞
y3w //複製3個單詞
yy //複製一行
y3y //複製3行
p //複製完成後按“p”粘貼
字符刪除
dl //刪除一個字母
d3l //刪除3個字母
dw //刪除一個單詞
d3w //刪除3個單詞
dd //刪除一行
d3d //刪除3行

字符剪切
cl //剪切一個字母
c3l //剪切3個字母
cw //剪切一個單詞
c3w //剪切3個單詞
cc //剪切一行
c3c //剪切3行
esc -->p 剪切後會進入插入模式,在執行粘貼時一定要退出插入模式

vim的可視化模式
在命令模式下按“ctrl+v”進入可視模式
可視模式下添加字符:選中要加入字符所在列,按“I”進入插入模式,寫入要加的字符,按“esc”退出
可視模式下修改字符::%s/原有字符/替換後的字符(只替換每一行中出現的第一個原有字符)
:%s/原有字符/替換後的字符/g(替換所有)

vim的退出模式
:q //用vim打開文件但沒有操作可直接退出
:q! //用vim打開文件並對字符作操作,放棄所有操作退出
:wq //保存退出
:wq! //強行保存退出
vimtutor    //vim的手冊

 

 

 

 

##通配符##


* //匹配0到任意字符
? //匹配單個字符
[[:alpha:]] //匹配單個字母
[[:lower:]] //匹配單個小寫字母
[[:upper:]] //匹配單個大寫字母
[[:digit:]] //匹配單個數字
[[:alnum:]] //匹配單個數字或字母
[[:punct:]] //匹配單個符號
[[:space:]] //匹配單個空格


{}表示不存在的或者存在的
{1..9} //1-9
{a..f} //a-f
{1,3,5} //135
{a,c,e} //a c e
{1..3}{a..c} //1a 2a 3a 2a 2b 2c 3a 3b 3c


[]表示存在的
[A-C] //aA bB cC
[a-c] //aA或者bB或者c
[1-3] //1或者2或者3
[145] //1或者4或者5
[^abc]|[!abc] //除了a並且除了b並且除了c

 

 

 

 

 

 

 

 

## 管理輸入輸出 ##

 


在linux系統中,正確輸出的編號爲1,錯誤輸出編號爲2


在系統中用普通用戶執行 "student"
find /etc -name passwd 
因爲student用戶權限問題會有以下輸出



find /etc -name passwd > file //重定向正確輸出
find /etc -name passwd 2> file //重定向錯誤輸出
find /etc -name passwd &> file //重定向所有輸出
find /etc -name passwd 2> /dev/null //重定向錯誤到垃圾桶


注意: >, 2> ,&>  都會覆蓋源文件內容
>file //清空file

find /etc -name passwd >> file //追加正確輸出
find /etc -name passwd 2>> file //追加錯誤輸出
find /etc -name passwd &>> file //追加所有輸出


注意:>> 2>> &>> 不會覆蓋源文件內容,會把相應的輸出字符方到文件的最後



| 管道,管道的作用是將前一條命令的輸出變成管道後命令的輸入


ls /bin | wc -l //統計ls /bin 命令輸出的行數

 

 

 

 

 

 

 

##用戶管理##

 


用戶就是系統使用者的身份
在系統中用戶存儲爲若干竄字符+若干個系統配置文件
用戶信息涉及到的系統配置文件:
/etc/passwd //用戶信息
用戶:密碼:uid:gid:說明:家目錄:用戶使用的shell

/etc/shadow //用戶認證信息
用戶:密碼:最後一次密碼修改該時間:最短有效期:最長有效期:警告期:非活躍期:帳號到期日
/etc/group //組信息
組名稱:組密碼:組id:附加組成員
/etc/gshadow //組認證信息
/home/username //用戶家目錄
/etc/skel/.* //用戶骨架文件


1.用戶建立
useradd 參數 用戶名字
-u //指定用戶uid
-g //指定用戶初始組信息,這個組必須已經存在
-G //指定附加組,這個組必須存在
-c //用戶說明
-d //用戶家目錄
-s //用戶所使用的shell,/etc/shells記錄了用戶能使用shell的名字
2.用戶刪除
userdel -r 用戶名稱 -r表示刪除用戶信息及用戶的系統配置


3.組的建立
groupadd -g //建立組
groupdel 組名 //刪除組


作以上實驗的監控命令:
watch -n 1 'tail -n 3 /etc/passwd /etc/group;echo ====;ls -l /home;echo ===;ls -l /mnt'




4.用戶id信息查看
id 參數  用戶
-u //用戶uid
-g //用戶初始組id
-G //用戶所有所在組id
-n //顯示名稱而不是id數字
-a //顯示所有信息


5.用戶信息更改
usermod 參數  用戶
-l //更改用戶名稱
-u //更改uid
-g //更改gid
-G //更改附加組
-aG //添加附加組
-c //更改說明
-d //更改家目錄指定
-md //更改家目錄指定及家目錄名稱
-s //更改shell
-L //凍結帳號

 

 

 

 

-U //解鎖

 

 

練習題1(通配符使用):
1. 在root用戶家目錄創建目錄bbs, blog;
2. bbs目錄中創建10個文件code{1..10}.java;
3. blog目錄中創建5個python腳本, linux{a..f}.py;
4. 切換目錄到bbs目錄中, 複製/etc/passwd到當前目錄;
5. 複製/etc/group文件到當前目錄之前所在的目錄;
6. 移動以.py結尾的所有腳本文件到student用戶的家目錄中;
7. 刪除bbs目錄中所有以code1開頭的java文件;


練習2(重定向):
1. student用戶身份執行find /etc/ -name passwd;
2. 將命令的正確輸出保存在文件/tmp/findOk文件中;
3. 將命令的錯誤輸出保存在文件/tmp/findErr文件中;
4. 將命令的所有輸出放入垃圾箱(/dev/null)中;
5. 追加【年-月-日】到文件/tmp/findOk中;


練習3(用戶管理):
1. 新建用戶redhat,用戶說明爲“redhat User”,
2. 並設置redhat密碼爲redhat,該用戶首次登陸需修改密碼。
3、給redhat用戶授權,可創建用戶;
4. redhat用戶身份新建用戶westos,指定uid=1008,gid=1008,但不能刪除westos用戶。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章