天天看點

linux基礎學習(三)

##########################################################################################

head -n   //檢視文本内容前n行

tail -n    //檢視文本内容後n行

 |        //管道。把前面指令的輸出結果交給後面指令處理

[root@server0 ~]# cat -n /etc/passwd | head -15 |tail -7   //檢視/etc/passwd檔案内容并添加行号

                                                        再檢視其前15行中的後7行。

  輸出結果如下:

     9    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

    10    operator:x:11:0:operator:/root:/sbin/nologin

    11    games:x:12:100:games:/usr/games:/sbin/nologin

    12    ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

    13    nobody:x:99:99:Nobody:/:/sbin/nologin

    14    dbus:x:81:81:System message bus:/:/sbin/nologin

    15    polkitd:x:999:998:User for polkitd:/:/sbin/nologin

grep :過濾資訊查找文本内容

[root@server0 ~]# grep -i 'ROOT' /etc/passwd       // 檢視 etc/passwd檔案中有root的内容

                                                          -i 表示不區分大小寫

root:x:0:0:root:/root:/bin/bash

operator:x:11:0:operator:/root:/sbin/nologin

[root@server0 ~]# cat -n /etc/passwd | grep 'root'   //添加行号并查找有root的内容

     1    root:x:0:0:root:/root:/bin/bash

[root@server0 ~]# grep '^root' /etc/passwd             //查找以 root 為開頭的内容

                                                         ^ :以什麼為開頭

[root@server0 ~]# cat -n /etc/passwd |grep 'bash$'       //查找以bash 結尾的内容

                                                           $ 以什麼結尾

    25    student:x:1000:1000:Student User:/home/student:/bin/bash

[root@server0 ~]# grep '^$' /etc/passwd                  //^$ 表示空行

[root@server0 ~]# grep -v 'root' /etc/passwd              //查找除root以外的内容

                                                             -v  取反 

&find 按條件查找文本檔案

         -----find [目錄] [條件]

                 -type 類型 (f 檔案、 d 目錄、l 快捷方式)

                 -name ‘文檔名稱’

                 -size +檔案大小(k,M,G)

                 -user 使用者名

         -----find指令的 -exec 操作

         ---find  .. .. -exec 處理指令 {} [路徑] \;

[root@server0 ~]# mkdir -p /opt/we/wa/wc

[root@server0 ~]# touch /opt/wf.txt

[root@server0 ~]# find /opt -type f          //查找opt目錄下的文本檔案  -type f 類型為檔案

/opt/wf.txt

[root@server0 ~]# find /opt -type d       //查找opt目錄下的目錄    -type d 類型為目錄

/opt

/opt/rh

/opt/we

/opt/we/wa

/opt/we/wa/wc

[root@server0 ~]# find /opt -type l         //查找opt目錄下的快捷方式   -type f 類型為快捷方式

[root@server0 ~]# find /opt -name 'w*'     //查找opt下名字為w*的檔案和目錄

[root@server0 ~]# find /opt -name 'w*' -type f  //查找opt下名字為w*的檔案

[root@server0 ~]# find /boot -size +10M                 //查找boot下10M以上的檔案

/boot/initramfs-0-rescue-946cb0e817ea4adb916183df8c4fc817.img

/boot/initramfs-3.10.0-123.el7.x86_64.img

/boot/initramfs-3.10.0-123.1.2.el7.x86_64.img

[root@server0 ~]# find /boot -size +10M -exec cp -r {} /opt \;//查找boot下10M以上的檔案

                                                               并複制到opt下

[root@server0 ~]# ls /opt

initramfs-0-rescue-946cb0e817ea4adb916183df8c4fc817.img  rh

initramfs-3.10.0-123.1.2.el7.x86_64.img                  we

initramfs-3.10.0-123.el7.x86_64.img                      wf.txt

[root@server0 ~]# find / -user student -type f

[root@server0 ~]# find / -user student -type f -exec cp {} /root/findfiles/ \; //查找根目錄下使用者 為

                                                 student的檔案并複制到root下finfile目錄

[root@server0 ~]# ls -lA /root/findfiles/          //檢視root下finfile目錄裡所有檔案

 &使用者管理         基本資訊在 /etc/passwd

[root@server0 ~]# useradd -u 2001 nsd01      //建立 uid 為2001的 nsd01 使用者

[root@server0 ~]# grep 'nsd01' /etc/passwd

nsd01:x:2001:2001::/home/nsd01:/bin/bash

使用者名:密碼占用符:UID:GID:使用者的描述資訊:家目錄:解釋器

[root@server0 ~]# useradd  -d /opt/nsd02 nsd02  //建立家目錄為opt/nsd02 的nsd02 使用者

[root@server0 ~]# grep 'nsd*' /etc/passwd

nsd02:x:2002:2002::/opt/nsd02:/bin/bash

[root@server0 ~]# useradd -s /sbin/nologin nsd03   //建立解釋器登陸為/sbin/nologin/ nsd03使用者

nsd03:x:2003:2003::/home/nsd03:/sbin/nologin

[root@server0 ~]# usermod -u 2004 -d /home/nsd02 nsd02  //修改nsd02 的UID 為2004,家目錄為

                                                       /home/nsd02

nsd02:x:2004:2002::/home/nsd02:/bin/bash

&使用者組   基本資訊在/etc/group

[root@server0 ~]# userdel nsd01

[root@server0 ~]# useradd kenji

[root@server0 ~]# useradd henter

[root@server0 ~]# groupadd  tarena               //建立tarena 組

[root@server0 ~]# grep 'tarena' /etc/group

tarena:x:1003:

[root@server0 ~]# gpasswd -a kenji tarena    //-a + 使用者   添加到組中

正在将使用者“kenji”加入到“tarena”組中

[root@server0 ~]# gpasswd -d kenji tarena    // -d + 使用者  從組中删除

正在将使用者“kenji”從“tarena”組中删除

[root@server0 ~]# gpasswd -M 'kenji,henter' tarena   //-M 添加多個使用者進組,但會覆寫原組中的

                                                                     使用者

tarena:x:1003:kenji,henter

[root@server0 ~]# 

 &使用者密碼設定   基本資訊在 /etc/shadow

[root@server0 ~]# echo hello | passwd --stdin kenji     // 非互動  直接把密碼hello 給 kenji 使用者

更改使用者 kenji 的密碼 。

passwd:所有的身份驗證令牌已經成功更新。

[root@server0 ~]# grep 'kenji' /etc/shadow

kenji:$6$62EJMB0Z$V8sfLfPKzr5UUHe3Kf59VZjs0K3a7dmU.YXVN70bZP9CoRRDCicULZOpx98oD0hFNjrI330II.2CqyQwduZlO.:17467:0:99999:7:::

[root@server0 ~]# passwd kenji    //互動型,

[root@server0 ~]#su - kenji 臨時切換到kenji使用者

 *歸檔及壓縮  

----- -c 建立歸檔

----- -x 釋放歸檔

----- -f 指定歸檔檔案名稱

----- -z/ -j / -J /調用 .gz / .bz2 /.xz 格式的工具進行處理

----- -C 指定釋放位置

----- -t 顯示歸檔中的檔案清單

----- -P 保持歸檔内檔案的絕對路徑

[root@server0 ~]# tar -zcf /opt/file.tar.gz /boot /etc/passwd   //把boot目錄和etc下的passwd檔案

                                  壓縮到opt下名字為file.tar.gz  -z 壓縮方式 -c 歸檔 -f 壓縮包名

tar: 從成員名中删除開頭的“/”

file.tar.gz                                              nsd02

[root@server0 ~]# tar -tf /opt/file.tar.gz    //檢視壓縮包的内容

[root@server0 ~]# tar -xf /opt/file.tar.gz -C /opt   //把壓縮包解壓到opt下 -x釋放文檔

                                                             -C 知名解壓路徑

boot

etc

 *NTP 網絡時間協定

        ---NTP伺服器為客戶機提供标準時間

        ---NTP客戶機需要與NTP伺服器保持溝通

    -----服務端,linux系統上一款軟體

      NTP時間同步伺服器

    ----用戶端,安裝用戶端軟體

~RHEL7 用戶端的校時服務

            -----軟體包 chrony

            -----配置檔案 /etc/chrony,conf