linux基礎命令實驗報告,一定要知道的,那些Linux基本操作命令

 2023-11-05 阅读 29 评论 0

摘要:一、目錄:   1.文件和目錄操作命令   2.用戶和用戶組操作命令   3.vim編輯器操作命令 linux基礎命令實驗報告。  4.打包和解壓操作命令   5.系統操作命令 二、為什么要學習linux?   1.linux是一款操作系統   2.linux經常來作為服務器操作系統來用 三、作用ÿ

一、目錄:

  1.文件和目錄操作命令

  2.用戶和用戶組操作命令

  3.vim編輯器操作命令

linux基礎命令實驗報告。  4.打包和解壓操作命令

  5.系統操作命令

二、為什么要學習linux?

  1.linux是一款操作系統

  2.linux經常來作為服務器操作系統來用

三、作用:

Linux基礎、  1.查看日志(任何操作的日志)

  2.定位bug(查看日志,日志級別:info/debug/error....)

  3.搭建環境(搭建測試環境)

  以上三條就是測試人員會在工作經常要用的三點

四、需要的軟件

常用命令行、  1.CENTOS 6.8----linux操作系統

  2.Xshell 5---遠程連接工具;其它還有PYTT secureCRT

  3.winSCP---windows與linux傳輸工具

五、文件和目錄操作命令

  1.linux終端共有6個,分別tty1---tty6 通過ctrl + alt+F1~F6進行切換

LINUX教程,  2.[root@localhost ~]# 后光標閃爍表示可以執行命令/編輯

  root===表示當前登錄的用戶名

  @----表示在

  localhost---主機域名

shell基礎、  ~ ---- 表示root用戶的家目錄

  root用戶的家目錄路徑:/root

  普通用戶的家目錄 ~

  普通用戶的家目錄 /home/普通用戶的用戶名目錄

linux基礎命令。  # ---- 表示是root $ ---表示是普通用戶

  3.快捷鍵

  ctrl+c 終止當前命令

  ctrl+l 清屏

什么是LINUX,  ctrl+D =exit 當前用戶退出

  ctrl+z 暫停當前命令 fg---恢復執行

  TAB鍵----自動補全

  如果輸入的字符串是唯一的,單擊tab鍵就會自動補全

常用命令、  如果輸入的字符串不是唯一的,雙擊tab鍵顯示所有以輸入的字符開頭的目錄或文件

  linux命令一樣的可以自動補全

  注意點:自動補全只補全當前目錄下存在的目錄或文件名稱

  4.目錄

  /----表示根目錄

  常用目錄

  /home 普通用戶的家目錄

  /root 是root用戶的家目錄

  不管是普通用戶還是root

  登錄成功后,所在位置都是在各自的家目錄下

  /etc 配置文件位置(用戶、密碼、服務的配置文件等)

  /opt 保存第三方軟件安裝位置

  /usr/local 安裝第三方軟件的位置

  /tmp 臨時文件,自動清空

  不管是存放軟件包或者文件時,都去新建相應的目錄,最好是當前登錄用戶家目錄下面,不要隨意刪除別人的文件

  5.絕對路徑和相對路徑

  什么是絕對路徑?什么是相對路徑?

  絕對路徑是從根目錄開始的完整路徑

  相對路徑是從當前位置(用戶所在的路徑位置)開始的路徑

  . 表示當前目錄

  .. 表示上一級目錄

  pwd

    pwd --查看當前位置的路徑(是從根目錄開始)

  cd

    cd ----切換目錄

  ls

    1.ls ---list---顯示當前目錄或指定目錄下文件和目錄

    經常使用的選項:

    ls -l ==ll ---查看當前目錄下的文件和目錄,以較長格式顯示文件和目錄

    顯示格式講解:

    第一個 -/d/l 表示文件類型

- 二進制文件 d 目錄 l 軟鏈接

第二個部分 rwxrwxrwx 表示各類用戶的權限

r -read 讀權限 w-wirte 寫權限 x ---執行權限

r-x 表示只有讀和執行權限

rwx rwx rwx

第一個rwx表示文件或目錄所屬用戶的權限

第二個rwx表示文件或目錄所屬組的權限

第三個rwx表示文件或目錄其他用戶的權限

第三個部分 root 表示文件或目錄所屬用戶的用戶名

第四個部分 root 表示文件或目錄所屬組的組名

第五個部分 12288 表示文件或目錄的大小

第六個部分 Feb 25 18:41 表示文件或目錄的最后修改時間

第七個部分 文件或目錄的名稱

2.ls -a ==ls --all 查看當前目錄下的所有文件和目錄,包括隱藏文件

3.ls -h 表示以容易理解的格式顯示文件的大小, 必須與-l一起使用,才能有所體現

4.ls -i 顯示文件和目錄的i節點

每一個文件和目錄的i節點都是唯一的,我們可以通過i節點來查找文件和目錄

mkdir

mkdir --創建新目錄

格式:mkdir [-p] 路徑/新目錄名

1.在當前目錄下創建新目錄

2.在指定的目錄下創建新目錄

3.-p, --parents no error if existing, make parent directories as needed ---遞歸創建目錄

rmdir

rmdir ---刪除空目錄

1.如果是目錄是非空,不能刪除

[root@localhost cc]# rmdir test/

rmdir: failed to remove `test/': Directory not empty'

2.不能刪除非目錄

[root@localhost ~]# rmdir install.log

rmdir: failed to remove `install.log': Not a directory'

rm

rm ---刪除文件和目錄

用法:rm [選項]... 文件...

不管是文件還是目錄,經常使用就是

rm -rf 要刪除的東西(可以是多個,中間用空格隔開)

[root@localhost tmp]# rm -rf cc test yum.log

rm -rf *---刪除當前目錄下所有文件和目錄

rm -rf te*--刪除以te開頭的所有文件和目錄

刪除以.1og結尾的內容:rm -rf *.log

使用rm命令時,一定確保這個文件和目錄確定要刪除,在liunx系統里面刪除是不可逆的,沒有回收站

1.刪除文件

[root@localhost tmp]# rm ifcfg-eth0

rm:是否刪除普通文件 "ifcfg-eth0"?y

[root@localhost tmp]# rm -f test.log --刪除不詢問

2.刪除目錄--- -r 同時會詢問是否刪除

[root@localhost test_dir]# rm -r test/

rm: descend into directory `test'? y

rm: remove directory `test/testt'? y

rm: remove directory `test'? y'

3.如果不想在刪除過程一直有詢問,可以使用

-f---強制刪除(需要更加謹慎) force

[root@localhost test_dir]# rm -rf test/

強制刪除,并且沒有詢問

如果有些文件使用rm 不能刪除,我們也可以加上-f,同樣的含義強制刪除,并且沒有詢問

cp

cp --復制文件或目錄

用法:cp [選項] 原文件或目錄 目標目錄

語法:cp -rp [原文件或目錄][目標目錄]

1.復制文件:

[root@localhost test_dir]#cp /etc/sysconfig/network-scripts/ifcfg-eth0 /tmp/test

[root@localhost test_dir]#cp /etc/sysconfig/network-scripts/ifcfg-eth0 ..

[root@localhost test_dir]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /tmp

2.-p 保留原文件或目錄的屬性,屬性就是ls -l所展示的東西

[root@localhost tmp]# cp -p /etc/sysconfig/network-scripts/ifcfg-eth0 /tmp

3.-r 復制目錄

[root@localhost tmp]# cp -r ./test_dir/test .

結論:cp 復制文件或目錄,復制成功后,原文件或目錄還存在

在復制的過程中,還可以改名

mv

mv與cp 最大的區別就是一個不保留原文件,一個保留原文件

1.剪切--不改名

[root@localhost test_dir]# mv ../ifcfg-eth0 .

2.剪切-改名

[root@localhost tmp]# mv test_dir/ifcfg-eth0 ./test.log

3.改名

[root@localhost test_dir]# mv test tests

作用:用來備份

場景:放了一個lib文件運行,開發說你替換一下lib文件

但是我們保證開發的lib的文件就是OK ,那這種情況最好備份

mv chaa.lib chaa.lib.bak

touch

touch -創建空文件

[root@localhost test]# touch test.log

這個命令不經常用,創建文件是vim編輯器

cat

cat 顯示文件內容

[root@localhost test]# cat yum.conf

一次性將文件內容完全展示出來,并且退出

從而可得出cat不適合查看文件很大的文件,cat只適合于查看文件內容偏小的文件

tac

tac 倒著顯示文件內容

[root@localhost test]# tac test.log

適合查看文件內容偏小的,并且將最一行顯示在最前面

more

more 分頁顯示文件的內容

空格或f 向下翻頁

enter鍵 換行(一行一行的顯示)

同時在頁面最下方的位置顯示文件顯示的當前進度

q或Q 退出

缺點:只能向下翻頁,不能向上查看

less

less 分頁顯示文件的內容(向上翻頁)

空格或f 向下翻頁

enter鍵 換行

q或Q 退出

pgup/pgdn 向上/向下一頁一頁切換

方向鍵 向上/向下一行一行切換

在文件中查找指定字符串時:

1.先輸入 /

2.在/后面輸入要查找的指定字符串

比如:/error

3.回車

目前顯示的一個指定字符串是從當前位置查找到的第一個,

可以按“n”繼續向下查找其它的

此方法經常用于在日志定位問題,或在修改文件要修改指定內容

less是顯示文件內容命令中用得最多的

head

head --顯示文件前面幾行

1.在不跟任何選項和參數時,默認顯示文件的前十行

[root@localhost test]# head services.log

2.只顯示文件的前面5行(行數前的-很重要)

[root@localhost test]# head -5 services.log

tail

tail 顯示文件最后的幾行

1.默認顯示文件的最后十行

[root@localhost test]# tail test.log

2.只顯示文件的最后三行 -n

[root@localhost test]# tail -3 test.log

==[root@localhost test]# tail -n 3 test.log

3.-f 動態顯示文件的最后幾行(經常用)

tail -400f XX.log

動態就是顯示文件新增的內容

用于場景:主要用于實時動態顯示操作日志

同樣是用于定位bug

chmod

chmod -改變文件或目錄的權限(讀寫執行)

rw- r-- r--

user group other

所有者 所有組 其它人

+ 增加 - 刪除 = 等于

1.將文件的寫權限刪除

[root@localhost test]# chmod u-w test.log

2.給所有組增加執行的權限

[root@localhost test]# chmod g+x test.log

3.給其它人賦于讀寫執行的權限

[root@localhost test]# chmod o=rwx test.log

4.錯誤方式

chmod u=rw o=r test.log

這種方式不行,不能同時修改所有者、所有組和其它人的權限

以上根據用戶來+-=三種方式來修改權限,顯得過于麻煩

解決方法:

r=4 w=2 x=1

4+2+1=7 用7這一個數字來代表所有權限

1.給所有者賦讀寫權限,所有組為讀執行權限 其它人賦讀權限

[root@localhost test]# chmod 654 test.log

通過數字的方式同時修改不同用戶的權限

2.給所有用戶都賦于讀寫權限6

[root@localhost test]# chmod 666 test.log

目前更改權限最簡便的方法,也是最常用的

3.給目錄賦權

[root@localhost test]# chmod 764 test12/

同時在文件或目錄前可以加上絕對路徑或相對路徑

4.-R 遞歸修改文件或目錄的權限(經常使用)

[root@localhost test]# chmod -R 644 ./test12/test

是同時將目錄下面所有的文件和子目錄中內容權限一并修改

chmod root和普通用戶都有權限

chown

chown 改變文件的所有者(經常使用)

1.改變test_dir.log文件的所有者為root

[root@localhost test]# chown root test_dir.log

2.普通用戶改變log.log的所有者

[test@localhost ~]$ chown test log.log

chown: changing ownership of `log.log': Operation not permitted'

chown普通用戶是沒權限進行操作這個命令,只有root才有權限去改變文件或目錄的所有者

chgrp

chgrp 改變文件和目錄的所有組

[root@localhost test]# chgrp test test

但是這個命令我們一般不用,因為很少會去只改變文件和目錄的所有組

如果要改變所有組,一般會同時改變所有者和所有組

如果是同時改變所有者和所有組,可以用chown

經常使用的方式

[root@localhost test]# chown wq:wq test

umask

umask ---顯示文件和目錄的默認權限

775/755 創建一個目錄

664/644 創建一個文件

022 umask---取反--755

7-0=7 7-2=5 7-2=5

代表一個目錄初始的權限為755,一個文件的初始權限為644(文件沒有可執行權限)

find

find ---文件搜索

格式:find [搜索范圍][匹配條件]

1.根據name來搜索(經常用)

a.精確搜索

[root@localhost test]# find /etc -name services

b.模糊搜索init開頭的文件和目錄

[root@localhost test]# find /etc -name init*

c.模糊搜索init結尾的文件和目錄

[root@localhost test]# find /etc -name *init

d.模糊搜索包含init的文件和目錄

[root@localhost test]# find /etc -name *init*

e.模糊搜索以init開頭的后面只有三個字符串的文件或目錄

* 代表一組字符串

? 代表一個字符

[root@localhost test]# find /etc -name init???

linux對大小很敏感,而且空格也敏感

[root@localhost test]# find /etc -name INIT???

f.根據name搜索時,不區分大小寫用選項 -iname

[root@localhost test]# find /etc -iname INIT???

/etc/inittab

[root@localhost test]# find /etc -name INIT???

沒有搜索出任何數據

2.根據文件大小搜索

a.大于4096的文件 +4096

[root@localhost test]# find /etc -size +4096

b.小于4096的文件 -4096

[root@localhost test]# find /etc -size -4096

c.等于4096的文件

[root@localhost test]# find /etc -size 4096

d.大于4096同時小于641020的文件 -a

[root@localhost test]# find /etc -size +4096 -a -size -641020

e.大于4096或者小于641020的文件

[root@localhost test]# find /etc -size +4096 -o -size -641020

3.根據文件所有者去搜索

[root@localhost test]# find /home/test -user test

[root@localhost test]# find -user test

如果不寫搜索范圍,默認搜索從當前目錄開始,搜索下面匹配的文件和目錄

4.根據文件屬性搜索

a.搜索5分鐘之內內容被修改的文件

[root@localhost test]# find . -mmin -5

文件內容被修改的同時,文件屬性也會被修改

b.搜索3分鐘之內文件屬性被修改的文件

[root@localhost test]# find . -cmin -3

amin cmin mmin后面接分鐘

atime ctime mtime后面接小時

5.根據文件類型來搜索

- 二進制文件f d 目錄 l 軟鏈接

1.搜索目錄---文件類型為d

[root@localhost test]# find . -type d

2.搜索當前目錄下文件類型為文件 f

[root@localhost test]# find . -type - ---錯誤

find: -type 的參數未知: -

[root@localhost test]# find . -type f ---正確

3.搜索當前目錄下的文件類型為軟鏈接 l

[root@localhost test]# find . -type l

4.在根目錄下搜索文件名稱為services的文件

[root@localhost test]# find / -name services -type f

grep

grep --搜索文件的內容

1.搜索test.log這個文件中包含qwer字符串的行

[root@localhost test]# grep qwer ./test.log

2.不區分大小寫進行搜索 選項 -i

[root@localhost test]# grep -i test test.log

3.搜索不包含123的文件內容

[root@localhost test]# grep -v 123 test.log

4.搜索不包含test的文件內容,不區分大小寫

[root@localhost test]# grep -iv test test.log

5.搜索不是以1開頭的文件內容

[root@localhost test]# grep -v ^1 test.log

6.搜索以1開頭的行

[root@localhost test]# grep ^1 test.log

^ 表示以什么開頭

在shell腳本 #表示注釋

7.屏蔽掉注釋行 --

[root@localhost test]# grep -v ^# sysctl.conf

8.經常使用的一種方法---管道 |

[root@localhost test]# ps -ef |grep java

ps -ef 查詢進程

|管道符 command1 | command2

將command1的輸出作為command2的輸入

[root@localhost test]# ls -l |grep test

ln

ln --鏈接命令

鏈接分為軟鏈接和硬鏈接

1.給目錄創建軟鏈接 -s

[root@localhost tmp]# ln -s /tmp/test/test12/test ./test1

lrwxrwxrwx. 1 root root 21 Apr 14 21:06 test1 -> /tmp/test/test12/test

軟鏈接的大小非常小,只是一個鏈接

軟鏈接相當于windows下面的快捷方式

2.給文件創建軟鏈接

[root@localhost tmp]# ln -s /tmp/test/test12/test/tw.log .

軟鏈接的目標文件和原文件的i節點不同

3.給文件創建一個硬鏈接

[root@localhost tmp]# ln /tmp/test/test12/test/tw.log ./tw1.log

硬鏈接的i節點相同

[root@localhost tmp]# ln /tmp/test/test12/test ./test_dir

ln: `/tmp/test/test12/test': hard link not allowed for directory'

硬鏈接不能針對目錄使用,只能對文件使用

?

?

?

一定要知道的,那些Linux操作命令(二)

?

目錄

1.文件和目錄操作命令

2.用戶和用戶組操作命令

3.vim編輯器操作命令

4.打包和解壓操作命令

5.系統操作命令

//用戶與用戶組操作命令

useradd 創建用戶

1.不指定任何信息,創建一個用戶

[root@localhost network-scripts]# useradd test_dir

修改的文件

(1)passwd文件:

test_dir:x:502:502::/home/test_dir:/bin/bash

(2)shadow文件

test_dir:!!:17270:0:99999:7:::

!!表示沒有密碼

17270為1970年1月1日到今天的天數,也就是時間戳

0表示兩次密碼修改間隔天數

99999表示密碼的有效期,99999表示永久生效

7表示密碼到期前的警告天數

密碼到期后寬限天數

(3)group文件-在創建test_dir這個用戶的同時,也創建一個與test_dir相同名稱的組

test_dir:x:502:---組

(4)gshadow文件-指test_dir組的密碼

test_dir:!::

(5)家目錄-新增一個test_dir的目錄

[root@localhost home]# ll drwx------. 2 test_dir test_dir 4096 Apr 14 22:08 test_dir

(6)郵件-新一個test_dir的目錄

[root@localhost network-scripts]# ls -l /var/spool/mail/|grep test_dir -rw-rw----. 1 test_dir mail 0 Apr 14 22:08 test_dir

2.添加參數增加用戶

[root@localhost network-scripts]# useradd -u 555 -d /home/hom -c "tester" -g test -G wq test1

已經指定一個存在的初始組,那么就不會再增加與用戶名相同的組

test1:$6$mjPKHzI/$dg6TtCABUBmzKIwv8Xrvv1iAQVtRhkN0CIoFIqu.8CdyA.E6Rds.s.FcowhXNQAf/rf.znrgVayd8vLfhsBIt0:17270:0:99999:7:::

有密碼時,!!會變成被加密后的字符串

用戶沒有密碼時,不能登錄

passwd 修改用戶密碼

1.root用戶去修改密碼,可以設置簡單的密碼

格式 :passwd 用戶名

[root@localhost network-scripts]# passwd test03 Changing password for user test03. New password: BAD PASSWORD: it is too simplistic/systematic BAD PASSWORD: is too simple Retype new password: passwd: all authentication tokens updated successfully.

只有root才有權限去修改其它用戶的密碼,并且可以設置相對簡單的密碼

其他用戶只能修改自己的密碼,并且要根據linux密碼設置規范去設置密碼

2.test用戶修改密碼

格式:passwd

[test@localhost ~]$ passwd Changing password for user test. Changing password for test. (current) UNIX password: New password: BAD PASSWORD: it is too simplistic/systematic New password: Retype new password: passwd: all authentication tokens updated successfully.

不能少8個字符,且相對復雜的密碼

3.passwd -S 顯示用戶的密碼狀態

[root@localhost network-scripts]# passwd -S test test PS 2017-04-14 0 99999 7 -1 (Password set, SHA512 crypt.)

4.passwd -l暫時鎖定用戶

[root@localhost network-scripts]# passwd -l test Locking password for user test. passwd: Success [root@localhost network-scripts]# cat /etc/shadow|grep test test:!!$6$XQLbiOl1$b/OUZT0T21cZxnnLZrjBSIG1/IvyzvfFlqkERgTypWrdf5xJwmprm5.kntSiqJ2v9ozEVsPCI6OEfmPrQrBRa1:17270:0:99999:7:::

鎖定用戶其實就是在用戶的密碼標志前加上!!,將密碼致為失效,相當于用戶沒有密碼,沒有密碼的用戶是不能進行登錄的

5.passwd -u 解鎖用戶

[root@localhost network-scripts]# passwd -u test Unlocking password for user test. passwd: Success [root@localhost network-scripts]# cat /etc/shadow|grep test test:$6$XQLbiOl1$b/OUZT0T21cZxnnLZrjBSIG1/IvyzvfFlqkERgTypWrdf5xJwmprm5.kntSiqJ2v9ozEVsPCI6OEfmPrQrBRa1:17270:0:99999:7:::

解鎖用戶就是去掉用戶密碼標志前的!!

3-5 中的命令只有root用戶才有權限操作

usermod 修改用戶的信息

1.修改test的UID為999 -u 手工指定的UID

[root@localhost network-scripts]# usermod -u 999 test

2.修改test用戶的用戶說明為“tester lead” -c

[root@localhost network-scripts]# usermod -c "tester lead" test

3.修改test用戶的附加組為wq -G

[root@localhost network-scripts]# usermod -G wq test

表示wq這個組的附加用戶有test1用戶,test用戶

一個用戶的初始組只有一個,可以擁有多個附加組

chage 修改用戶的密碼狀態

-l ---顯示密碼的詳細列表

-m ---修改二次密碼間隔天數

-M ---修改密碼的有效期

-W ---修改密碼的警告天數

-I ---修改密碼的寬限天數

-E ---修改賬戶失效日期

userdel 刪除用戶

1.userdel 用戶名

執行userdel 用戶名時,文件的內容被修改的就是以下幾個文件(etc)

[root@localhost ~]# find /etc -mmin -2

而家目錄下面,相同用戶名的目錄沒有被刪除

2.userdel -r 用戶名

[root@localhost home]# userdel -r test01

使用這個選項-r,不僅將etc下面的四個文件內容被修改了,而且還將home和mail目錄下面,與用戶名相同的目錄被刪除了

根據以上的信息,我們可以知道不管增加還是刪除用戶,修改的文件就是passwd shadow group gshadow ,還包含的home和mail目錄

從而得知,如果是手工添加用戶或刪除用戶,直接去修改這幾個文件也可以達到相同的效果

id 顯示用戶的組ID和用戶ID

格式:id 用戶名

[root@localhost mail]# id test uid=999(test) gid=501(test) groups=501(test),500(wq)

不僅顯示了用戶ID,還顯示了初始組ID,同時組中還包含了附加組的ID

[root@localhost mail]# cat /etc/group |grep test wq:x:500:test1,test test:x:501:

su 切換用戶

1.使用su命令時,一定要記得加上 - 代表同時切換環境變量

(經常用)

[root@localhost mail]# su - test

使用su命令時,不加 - 不能完全切換,這種用法是錯誤的

2.在不切換用戶的時候,可以跟上 -c 使用其用戶執行一次的命令

[test@localhost home]$ su root -c "useradd test02" Password:

groupadd 添加組

1.groupadd 組名

添加一個組時,修改的文件為group gshadow

2.-g 手工指定組ID

[root@localhost mail]# groupadd -g 1222 t2

groupadd所增加不是任何一個用戶的初始組或者附加組、

groupmod 修改組信息

1.修改組ID -g

格式:groupmod -g 新的組ID 組名

[root@localhost mail]# groupmod -g 1112 t1

2.修改組的組名

格式:groupmod -n 新組名 舊組名

要把組名為t1的組改成組名為tt1

[root@localhost mail]# groupmod -n tt1 t1

groupdel 刪除組

1.刪除的組既不是初始組也不是附加組

[root@localhost mail]# groupdel t2

刪除時修改的文件為group gshadow

2.刪除初始組

[root@localhost mail]# groupdel test groupdel: cannot remove the primary group of user 'test'

用戶的初始組不可以刪除

如果要刪除,解除綁定,將組改成非初始組

3.刪除附加組

[root@localhost mail]# cat /etc/group |grep test04 tt1:x:1112:test04 test04:x:1002: [root@localhost mail]# groupdel tt1 [root@localhost mail]# cat /etc/group |grep test04 test04:x:1002:

如果一個組是某用戶的附加組,可以被刪除

從而得出初始組不能被刪除,附加組可以被刪除

gpasswd 給組添加附加用戶或給組刪除附加用戶

gpasswd操作都是附加組

1.將test用戶作為test03組的附加用戶

格式:gpasswd -a 用戶名 組名

[root@localhost mail]# gpasswd -a test test03 Adding user test to group test03 test03:x:1000:test

表示test用戶為test03的附加用戶

2.刪除test03組的附加用戶test

格式:gpasswd -d 附加用戶名 組名

[root@localhost mail]# gpasswd -d test test03 Removing user test from group test03 [root@localhost mail]# cat /etc/group|grep test03 test03:x:1000:

//文檔的壓縮與打包

gzip 壓縮

格式:gzip 文件名

1.壓縮文件

[root@localhost test]# gzip services

使用這條命令,引起的變化:

1.文件的大小變了,從626K-125K

gzip可以對文件進行60%-70%的壓縮

2.文件的名字改變了,從services 變成services.gz

其實就是在文件的名字后加上了.gz

原文件被刪除,新增一個.gz的文件

壓縮后文件格式變成.gz

gunzip 解壓

格式:gunzip 文件名.gz

1.對.gz文件使用gunzip命令解壓

[root@localhost test]# gunzip services.gz

gunzip變化與gzip相反

2.對.gz文件使用gzip -d 解壓

[root@localhost test]# gzip services [root@localhost test]# ls -lh services.gz -rwxr-xr-x. 1 root root 125K Apr 14 17:55 services.gz [root@localhost test]# gzip -d services.gz [root@localhost test]# ls -hl services -rwxr-xr-x. 1 root root 626K Apr 14 17:55 services

gzip壓縮工具解壓文件,gzip工具壓縮率非常高,所以使用也非常頻繁

tar 命令

打包和壓縮:

打包是指將一大堆文件或目錄變成一個總的文件

壓縮則是將一個大的文件通過一些壓縮算法變成一個小文件

這是二個步驟,是分開的

-c, --create 創建一個新歸檔 -x, --extract, --get 從歸檔中解出文件 -f, --file=ARCHIVE 使用歸檔文件或 ARCHIVE 設備 --force-local 即使歸檔文件存在副本還是把它認為是本地歸檔 -v, --verbose 詳細地列出處理的文件 -z, --gzip, --gunzip, --ungzip 通過 gzip 過濾歸檔

0.歸檔文件,并創建一個新的歸檔文件

將123233和yum.conf打包在一起

[root@localhost test]# tar -cf 12.tar 123233 yum.conf

變化:

1.文件大小沒變

[root@localhost test]# ls -hl 123233 12.tar yum.conf -rw-r--r--. 1 501 test 9 4月 12 17:21 123233 -rw-r--r--. 1 root root 10K 4月 17 20:17 12.tar -rwxrw-r--. 1 root root 969 4月 12 16:40 yum.conf

2.將二個文件生成一個.tar的文件

tar:在window來說就是將多個文件放到一個文件夾

3.將一個tar文件打開

[root@localhost test12]# tar -xvf 12.tar

4.在打包的同時并壓縮--- -czvf(經常用)

[root@localhost test12]# tar -czvf qq.tar.gz 123233 yum.conf -rw-r--r--. 1 root root 10240 4月 17 20:23 12.tar -rw-r--r--. 1 root root 757 4月 17 20:30 qq.tar.gz

以上二個文件內容相同,第一個文件是將多個文件只是打包在一起,第二個文件是將多個文件打包的同時并壓縮

5.解包并解壓

[root@localhost test12]# tar -xzvf q.tar.gz

tar命令打包并壓縮:原文件沒有被刪除,而是生成一個新的.tar.gz

解壓的時候也是將.tar.gz里的文件被釋放出來,如果有相同的文件名被覆蓋

打包壓縮:tar -czvf 新文件名.tar.gz 文件1 文件2 ... 目錄1 目錄2...

解包解壓:tar -xzvf 解包解壓的文件名

6.將某個目錄所有的文件和目錄都打包壓縮

[root@localhost test12]# tar -czvf test12.tar.gz *

zip 對文件或目錄壓縮

1.壓縮文件

[root@localhost test]# zip q.zip 123233 yum.conf

對比gzip和zip壓縮后的文件大小:

-rw-r--r--. 1 root root 757 4月 17 20:57 1.tar.gz -rw-r--r--. 1 root root 891 4月 17 20:56 q.zip

可以得到gzip比zip壓縮率高

2.壓縮目錄 -r

[root@localhost test]# zip -r test.zip test12

原目錄與壓縮后的文件

drwxrwxrwx. 3 root root 4096 4月 17 20:44 test12 -rw-r--r--. 1 root root 516448 4月 17 21:00 test.zip

壓縮過程中原文件或原目錄不會被刪除

unzip 解壓.zip文件

1.解壓

[root@localhost test]# unzip test.zip

2.將解壓的結果顯示在屏幕上 -c

[root@localhost test]# unzip -c q.zip

將文件的內容直接展示在屏幕上

3.-n 解壓時不要覆蓋原有的文件

使用-n時,原有文件存在

[root@localhost test]# unzip -n q.zip Archive: q.zip

使用-n時,原有文件不存在

[root@localhost test]# unzip -n q.zip

unzip解壓后原來的.zip還存在

bzip2 壓縮文件

格式:bzip2 文件名

1.bzip2壓縮文件且原文件刪除

[root@localhost test]# bzip2 yum.conf

并新生成了一個.bz2的文件

2.-k 壓縮文件的同時保留原文件

[root@localhost test]# bzip2 -k services

bunzip2 解壓

[root@localhost test]# bunzip2 123233.bz2

[root@localhost test]# ll

-rw-r--r--. 1 root root 9 4月 12 17:21 123233

生成一個新文件,原來的.bz2被刪除了

//vim編輯器 vi命令

vim編輯器有三種模式:

一般模式:使用vi命令進入的那個模式就是一般模式

命令模式:在一般模式下輸入:或/ 即進入了命令模式

編輯模式:在一般模式下按I,i,A,a,O,o,R 即進入了編輯模式

在編輯模式下會提示INSERT REPLACE字樣

從命令模式或者編輯模式切換到一般模式,按ESC

一般模式下的命令:

1.方向鍵 單個字符上下左右切換

2.pageup、pagedown 向上 向下翻頁

ctrl+f ctrl+d

3.0/shift+6 回到本行的行首

4.shift+4 回到本行的行尾

進入到編輯模式按I,i,A,a,O,o,R

按I---在光標所在行的行首插入字符

按i---在光標的前面插入字符

按A---在光標所在行的行尾插入字符

按a---在光標后面插入字符

按O---在光標所在行的上方插入新的一行

按o---在光標所在行的下方插入新的一行

按以上6個字母,都可以從一般模式切換到編輯模式,且顯示“INSERT”字樣

以上6個,都插入字符,只是位置不同,如果記不住全部的,記住一個也行

按R---從一般模式切換到編輯模式,顯示“REPLACE”

表示從光標所在處開始替換輸入的字符串,直到按ESC結束

一般模式下:

在一般模式下按r---只替換光標所在處的一個字符

按u---撤消

可以一直按,直到“Already at oldest change”,表示文件版本已經回到原始文檔狀態

以下命令都是在一般模式下使用:

x---刪除光標所在處的字符

nx---刪除從光標所在處開始n個字符

dd---刪除光標所在行整個一行

ndd---刪除從光標所在行開始的n行

dG---刪除從光標所在行到該文件的最后一行(包括最一行)

D---刪除從光標所在處到本行的行尾

gg---回到該文件的首行

G---回到該文件的最后一行

nG--到n行

yy---復制當前行

nyy---復制從當前行往下n行(包括當前行)

dd---剪切當前行

ndd---剪切當前行往下n行

p---粘貼在光標所在行的行下

P---粘貼在光標所在行的行上

在命令模式下命令:

:n1,n2d---刪除從第n1行到第n2行

:set nu---設置行號

:set nonu---取消行號

:n---到n行

/搜索的字符串---在文件中搜索指定的字符串

一般是從光標所在行開始往下搜索,按n查找下一個指定的字符串

:set ic---搜索過程中不區分大小寫

:set noic---搜索過程中區分大小寫

替換:

:%s/old/new/g----將全文中old的字符串一次性全部替換成new

:%s/old/new/c----找到第一個要替換的old字符串,并且詢問是否要替換

replace with test (y/n/a/q/l)?

y-yes n-no a-all q-quit l-only

:n1,n2s/old/new/g---在n1行到n2行之間中這old字符串替換成new字符串

:wq ---保存并退出

:wq! ---強制保存并退出

:q ---退出,不保存修改

:q! --強制退出,不保存修改

:w --保存

:w new_name ---另存為指定文件

ZZ ==:wq

//系統命令

軟件測試經常用到的系統命令就是查看進程,或者是去看系統的健康狀態

1.top---查看linux系統的健康狀態

PID ---進程ID

2.free--查看liunx系統的空閑空間

3.kill --殺死進程

4.ps -ef

ps -ef|grep java

查看進程中包含java的進程,其實也相當查詢java服務有沒有啟動起來

5.kill ---用于結束服務或進程

格式:kill 進程號

1.強制結束進程 -9

格式:kill -9 進程號----強制殺死該進程

2.一次性結束多個進程

格式:kill 進程號1 進程號2 ....

6.查看端口號

[root@localhost test]# netstat -lnp|grep 3306 tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2043/mysqld

7.執行服務

[root@localhost bin]# ./startup.sh [root@localhost bin]# ./shutdown.sh

8.啟動/停止mysqld服務

service mysqld start/stop

轉載于:https://www.cnblogs.com/yancy03/p/10303421.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/3/166157.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息