Linux基礎命令(二)

来源:https://www.cnblogs.com/zicnotes/archive/2022/07/02/16438576.html
-Advertisement-
Play Games

Linux基礎命令(二) 1. 壓縮,解壓縮命令 壓縮格式:gz、bz2、xz、zip、Z 1.1 gzip 壓縮,壓縮後文件以.gz結尾,壓縮後會刪除原文件 [root@zzd ~]# gzip 1.txt //將1.txt壓縮,以.gz結尾 -d 解壓縮,解壓完成後刪除原文件 [root@zzd ...


Linux基礎命令(二)


目錄

1. 壓縮,解壓縮命令

壓縮格式:gz、bz2、xz、zip、Z

1.1 gzip

壓縮,壓縮後文件以.gz結尾,壓縮後會刪除原文件

[root@zzd ~]# gzip 1.txt 		//將1.txt壓縮,以.gz結尾

-d 解壓縮,解壓完成後刪除原文件

[root@zzd ~]# gzip -d 1.txt.gz 		//將1.txt.gz解壓

-# #用1-9代替,指定壓縮比,預設為6

1.2 gunzip

解壓縮,解壓縮完成後會刪除原文件

[root@zzd ~]# gunzip 1.txt.gz 		//將1.txt.gz解壓

1.3 zcat

不解壓的情況下查看文件的內容

[root@zzd ~]# zcat 1.txt.gz 		//不解壓,查看壓縮文件里的內容
1 2 4
2 4 6
5 6 8
3 5 9
2 8 5
5 6 8
1 3 7
1 2 4
2 8 5
1 2 4
3 5 9
2 4 6

1.4 bzip2

壓縮,壓縮後文件以.bz2結尾,壓縮後刪除原文件。bzip2是一款比gzip有著更大壓縮比的壓縮工具,使用格式相近

[root@zzd ~]# bzip2 1.txt 		//將1.txt壓縮,以.bz2結尾

-d 解壓縮,解壓完成後刪除原文件

[root@zzd ~]# bzip2 -d 1.txt.bz2	//將1.txt.bz2文件解壓

-k 壓縮時保留原文件

[root@zzd ~]# ls
1.txt
[root@zzd ~]# bzip2 -k 1.txt 		//壓縮完後保留原文件
[root@zzd ~]# ls
1.txt  1.txt.bz2

-# #用1-9代替,指定壓縮比,預設為6

1.5 bunzip2

解壓縮,解壓縮完成後刪除原文件

[root@zzd ~]# bunzip2 1.txt.bz2		//將1.txt。bz2文件解壓

1.6 bzcat

不解壓的情況下查看文件的內容

[root@zzd ~]# bzcat 1.txt.bz2 		//不解壓,查看文件內容
1 2 4
2 4 6
5 6 8
3 5 9
2 8 5
5 6 8
1 3 7
1 2 4
2 8 5
1 2 4
3 5 9
2 4 6

1.7 xz

壓縮,壓縮後文件以.xz結尾,壓縮完成後刪除原文件。比bzip2有著更大壓縮比的壓縮工具,使用格式近似

[root@zzd ~]# xz 1.txt		//將文件1.txt壓縮,以.xz結尾

-d 解壓縮,解壓縮後刪除原文件

[root@zzd ~]# xz -d 1.txt.xz 	//將文件1.txt.xz解壓

-k 壓縮時保留原文件

[root@zzd ~]# xz -k 1.txt		//壓縮時保留原文件

-# #用1-9代替,指定壓縮比,預設為6

1.8 unxz

解壓,解壓完成後刪除原文件

[root@zzd ~]# unxz 1.txt.xz 	//解壓1.txt。xz

1.9 xzcat

不解壓的情況下查看文件內容

[root@zzd ~]# xzcat 1.txt.xz 		//不解壓,查看文件內容
1 2 4
2 4 6
5 6 8
3 5 9
2 8 5
5 6 8
1 3 7
1 2 4
2 8 5
1 2 4
3 5 9
2 4 6

1.10 zip

既歸檔又壓縮的工具,zip可以壓縮目錄,壓縮完成後保留原文件

[root@zzd ~]# zip test.zip 1.txt  	//將1.txt進行歸檔並壓縮為test.zip

[root@zzd ~]# zip Test-dir.zip test/*	//將目錄test/歸檔並壓縮為Test-dir.zip

1.11 unzip

解壓縮,解壓完成後不刪除原文件

[root@zzd ~]# unzip Test-dir.zip 		//將Test-dir.zip解壓

1.12 tar

歸檔工具,只歸檔不壓縮
Linux的文件沒有尾碼
-c 創建歸檔文件
-f 操作的歸檔文件,此選項後面只能跟想要操作文件名

[root@zzd ~]# tar -cf test.tar test/*		//將test目錄歸檔為test.tar

-x 還原歸檔

[root@zzd ~]# tar xf test.tar			//將test.tar還原歸檔

-v 顯示歸檔過程

[root@zzd ~]# tar -vcf test.tar test/*		//將test目錄歸檔為test.tar並顯示歸檔過程
test/test1/
test/test2/

-p 歸檔時保留許可權信息,只有管理員才能使用此選項

-C 將展開歸檔的文件保存至指定目錄下

[root@zzd ~]# tar -xf test.tar -C /opt/		//將test。tar還原歸檔到指定目錄
[root@zzd ~]# ls /opt/
test

-tf 不展開歸檔,查看文件歸檔了那些文件

[root@zzd ~]# tar -tf test.tar 		//不展開歸檔,查看歸檔文件test.tar的內容
test/
test/test1/
test/test2/

-zcf 歸檔並調用gzip壓縮工具
-jcf 歸檔並調用bzip2壓縮工具
-Jcf 歸檔並調用xz壓縮工具

[root@zzd ~]# tar -zcf test.tar.gz test/		//歸檔並調用gzip壓縮工具
[root@zzd ~]# file test.tar.gz 				//查看test.tar.gz的文件類型
test.tar.gz: gzip compressed data, last modified: Sat Jul  2 09:51:50 2022, from Unix, original size 10240

[root@zzd ~]# tar -jcf test.tar.bz2 test/		//歸檔並調用baip2壓縮工具
[root@zzd ~]# file test.tar.bz2 			//查看test.tar.bz2的文件類型
test.tar.bz2: bzip2 compressed data, block size = 900k

[root@zzd ~]# tar -Jcf test.tar.xz test/		//歸檔並調用xz壓縮工具
[root@zzd ~]# file test.tar.xz				//查看test.tar.xz的文件類型
test.tar.xz: XZ compressed data

2. 查看文本

2.1 cat

拼接文件內容並輸出至標準輸出(屏幕)
-n 顯示行號

[root@zzd ~]# cat 001			//將001文件的內容標準輸出
ashfasdf

[root@zzd ~]# cat 001 002 003		//將001、002、003的內容憑藉並標準輸出
ashfasdf
sdlvnnxcbxbf
nstelazbf

[root@zzd ~]# cat -n 001 002 003		//顯示行號
     1	ashfasdf
     2	sdlvnnxcbxbf
     3	nstelazbf
    
//使用cat查看文件內容時會將文件的所有內容全部載入到記憶體,所以應當避免使用cat查看打開巨大文件

2.2 more

全屏查看文件內容,只能從前往後看,不能從後往前看,文件內容顯示完後退出

[root@zzd ~]# more anaconda-ks.cfg

2.3 less

全屏顯示文件內容,可從前往後亦可從後往前(“空格”向後翻,“b”向前翻,“q”退出),推薦使用

[root@zzd ~]# less anaconda-ks.cfg 

2.4 head

從頭部開始列印文件內容,預設列印10行
-n 指定要列印的行數,可以是-n 5也可以是-5

[root@zzd ~]# head -5 passwd 			//列印passwd頭部開始的5行
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

2.5 tail

從尾部開始列印文件內容,預設列印10行
-n 指定要列印的行數,可以是-n 5也可以是-5

[root@zzd ~]# tail -5 passwd 			//列印passwd尾部開始的5行
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
unbound:x:997:994:Unbound DNS resolver:/etc/unbound:/sbin/nologin
sssd:x:996:993:User for sssd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
rngd:x:995:992:Random Number Generator Daemon:/var/lib/rngd:/sbin/nologin


//如果想要列印passwd文件里的第五行該怎麼辦?
[root@zzd ~]# head -5 passwd | tail -1
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

3.文本處理

3.1 cut

截取文件內容
-d 指定欄位分隔符
-f 指定要顯示的欄位
     -f 1,3 顯示1和3
     -f 1-3 顯示1到3

[root@zzd ~]# cat qwer			//標準輸出qwer文件內容
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
[root@zzd ~]# cut -d : -f 1,3 qwer 		//以":"為分隔符,截取文件qwer的第1列和第3列
root:0
bin:1
daemon:2
adm:3
lp:4

[root@zzd ~]# cut -d : -f 1-3 qwer 		//以":"為分隔符,截取文件qwer的第1列到第3列
root:x:0
bin:x:1
daemon:x:2
adm:x:3
lp:x:4

//cut只能截取一些非常規範的文件內容,如果是一個內容不規範的文件,那麼cut就無能為力了。例如,以空格為分隔符,想要截取磁碟使用情況的第四列就會出現以下情況
[root@zzd ~]# df -h | cut -d ' ' -f 4





17G



//這種情況就需要用到awk命令,在3.2會提及

3.2 sed

基於行的過濾和轉換文本的流編輯器

#sed的功能很強大,可以實現對某個文件的刪、改、查
一.查
[root@zzd ~]# sed -n '2p' qwer 		//-n可以關閉sed預設的列印功能,2p表示列印第二行
bin:x:1:1:bin:/bin:/sbin/nologin

[root@zzd ~]# sed '2p' qwer 		//不加上選項-n,在預設列印的基礎上列印第二行,第二行會出現兩次
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

[root@zzd ~]# sed -n '2p;5p' qwer		//關閉sed預設的列印功能,列印第2行和第5行
bin:x:1:1:bin:/bin:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

[root@zzd ~]# sed -n '2,4p' qwer		//關閉sed預設的列印功能,列印第2行到第4行
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin

二.改
[root@zzd ~]# sed 's/:/;/' qwer			//將文件qwer每行的第一個":"替換為";"
root;x:0:0:root:/root:/bin/bash
bin;x:1:1:bin:/bin:/sbin/nologin
daemon;x:2:2:daemon:/sbin:/sbin/nologin
adm;x:3:4:adm:/var/adm:/sbin/nologin
lp;x:4:7:lp:/var/spool/lpd:/sbin/nologin

[root@zzd ~]# sed 's/:/;/3' qwer 		//將每行的第3個":"替換為";"
root:x:0;0:root:/root:/bin/bash
bin:x:1;1:bin:/bin:/sbin/nologin
daemon:x:2;2:daemon:/sbin:/sbin/nologin
adm:x:3;4:adm:/var/adm:/sbin/nologin
lp:x:4;7:lp:/var/spool/lpd:/sbin/nologin

[root@zzd ~]# sed 's/:/;/g' qwer		//將整個文件里所有的":"都替換為";"
root;x;0;0;root;/root;/bin/bash
bin;x;1;1;bin;/bin;/sbin/nologin
daemon;x;2;2;daemon;/sbin;/sbin/nologin
adm;x;3;4;adm;/var/adm;/sbin/nologin
lp;x;4;7;lp;/var/spool/lpd;/sbin/nologin

[root@zzd ~]# sed -n '2p' qwer | sed 's/:/;/g' 或者  head -2 qwer | tail -1 | sed 's/:/;/g'		//將文件的第二行的所有":"改為";"	
bin;x;1;1;bin;/bin;/sbin/nologin

三.刪
[root@zzd ~]# sed '2d' qwer			//刪除第2行
root:x:0:0:root:/root:/bin/bash
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

[root@zzd ~]# sed '2d;5d' qwer			//刪除第2行和第5行
root:x:0:0:root:/root:/bin/bash
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin

[root@zzd ~]# sed -e '2d' -e '5d' qwer		//刪除第2行和第5行
root:x:0:0:root:/root:/bin/bash
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin

[root@zzd ~]# sed '2,4d' qwer 			//刪除第2行到第4行
root:x:0:0:root:/root:/bin/bash
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

//以上二、三的所有的命令都是預覽,並沒有真正的修改,如果想要真正的修改需要加上"-i"選項

3.2 awk

基於列的文本報告工具

[root@zzd ~]# awk -F':' '{print $1,$4}' qwer		//以":"為分隔符,截取第1列和第4列
root 0
bin 1
daemon 2
adm 4
lp 7
[root@zzd ~]# awk -F':' '{print $1":"$4}' qwer
root:0
bin:1
daemon:2
adm:4
lp:7

[root@zzd ~]# awk -F':' 'NR==1{print $1,$4}' qwer		//以":"為分隔符,截取第1行第1列和第4
root 0

[root@zzd ~]# awk  'NR==1{print}' qwer		//截取第一行
root:x:0:0:root:/root:/bin/bash

//以空格為分隔符,截取磁碟使用情況的第四列
[root@zzd ~]# df -h | awk -F' ' '{print $4}' 
Avail
451M
471M
464M
471M
16G
0
839M
95M

4. 文本排序

4.1 sort

[root@zzd ~]# cat 1.txt 
1 2 4
2 4 6
5 6 8
3 5 9
5 6 8
1 3 7
1 2 4
1 2 4
[root@zzd ~]# sort 1.txt 
1 2 4
1 2 4
1 2 4
1 3 7
2 4 6
3 5 9
5 6 8
5 6 8

-n 根據數值大小進行排序

[root@zzd ~]# sort 1.txt 		//再添加一組數10 20 30再進行排序
10 20 30
1 2 4
1 2 4
1 2 4
1 3 7
2 4 6
3 5 9
5 6 8
5 6 8

[root@zzd ~]# sort -n 1.txt 		//以數值進行排序
[root@zzd ~]# sort -n 1.txt 
1 2 4
1 2 4
1 2 4
1 3 7
2 4 6
3 5 9
5 6 8
5 6 8
10 20 30

-r 逆序排序

[root@zzd ~]# sort -r 1.txt 		//逆序排序
5 6 8
5 6 8
3 5 9
2 4 6
1 3 7
1 2 4
1 2 4
1 2 4
10 20 30

-t 指定欄位分隔符
-k 以哪個欄位為關鍵字進行排序

[root@zzd ~]# sort -t ' ' -k 3 1.txt 	//以空格為分隔符並且以第3列為關鍵字進行排序
10 20 30
1 2 4
1 2 4
1 2 4
2 4 6
1 3 7
5 6 8
5 6 8
3 5 9

-u 去重,排序後相同的行只顯示一次

[root@zzd ~]# sort -nu 1.txt 	//以數值進行排序並只顯示一次重覆的行
1 2 4
2 4 6
3 5 9
5 6 8
10 20 30

-f 排序時忽略字元大小寫

[root@zzd ~]# cat ABC 
qwe
Csd
aff
afgg
aff
Afgg
asx
[root@zzd ~]# sort ABC 		//排序
aff
aff
afgg
Afgg
asx
Csd
qwe
[root@zzd ~]# sort -uf ABC 		//進行排序,重覆行只顯示一次並且忽略大小寫
aff
afgg
asx
Csd
qwe

4.2 uniq

報告重覆行(連續且完全相同方為重覆)
-c 顯示文件中行的重覆次數
-d 只顯示重覆的行
-u 只顯示未重覆的行

[root@zzd ~]# sort -n 1.txt | uniq -c  		//顯示文件中行的重覆次數
      3 1 2 4
      1 1 3 7
      1 2 4 6
      1 3 5 9
      2 5 6 8
      1 10 20 30

[root@zzd ~]# sort -n 1.txt | uniq -d		//顯示文件中重覆的行
1 2 4
5 6 8

[root@zzd ~]# sort -n 1.txt | uniq -cd		//顯示文件中重覆的行,並顯示重覆次數
      3 1 2 4
      2 5 6 8

[root@zzd ~]# sort -n 1.txt | uniq -u		//顯示文件中未重覆的行
1 3 7
2 4 6
3 5 9
10 20 30

5. 文本統計

5.1 wc(word count)

-c 顯示位元組數
-l 顯示行數
-w 顯示單詞數

[root@zzd ~]# wc 1.txt 		//統計文件的行數,單詞數,位元組數
 9 27 57 1.txt

[root@zzd ~]# wc -l 1.txt 		//統計文件的行數
9 1.txt

[root@zzd ~]# wc -w 1.txt 		//統計文件單詞數
27 1.txt

[root@zzd ~]# wc -c 1.txt 		//統計文件位元組數
57 1.txt

6. 大小統計

6.1 du

查看文件或目錄占用磁碟空間大小
-h 以人類友好的方式顯示大小
-s 顯示總的占用空間大小

[root@zzd ~]# du -sh big 		//查看文件big占磁碟空間的大小
1.0G	big

6.2 df

報告文件系統磁碟空間的使用情況
-h 以人類友好方式顯示大小
-i 顯示inode信息

[root@zzd ~]# df -h		//以人類友好方式顯示大小
Filesystem           Size  Used Avail Use% Mounted on
devtmpfs             451M     0  451M   0% /dev
tmpfs                471M     0  471M   0% /dev/shm
tmpfs                471M  6.5M  464M   2% /run
tmpfs                471M     0  471M   0% /sys/fs/cgroup
/dev/mapper/cs-root   17G  1.7G   16G  10% /
/dev/sr0             9.0G  9.0G     0 100% /mnt
/dev/sda1           1014M  176M  839M  18% /boot
tmpfs                 95M     0   95M   0% /run/user/0

[root@zzd ~]# df -i 		//顯示文件系統inode使用情況
Filesystem           Inodes IUsed   IFree IUse% Mounted on
devtmpfs             115417   362  115055    1% /dev
tmpfs                120432     1  120431    1% /dev/shm
tmpfs                120432   555  119877    1% /run
tmpfs                120432    17  120415    1% /sys/fs/cgroup
/dev/mapper/cs-root 8910848 43752 8867096    1% /
/dev/sr0                  0     0       0     - /mnt
/dev/sda1            524288   301  523987    1% /boot
tmpfs                120432     5  120427    1% /run/user/0

7. 主機名管理

7.1 hostname

查看或臨時修改主機名,重啟後失效,一般用於查看主機名

[root@zzd ~]# hostname		//查看主機名
zzd

[root@zzd ~]# hostname zic		//臨時修改主機名
[root@zzd ~]# bash
[root@zic ~]# 
[root@zic ~]# cat /etc/hostname 
zzd			#可以看到主機名並沒有寫進主機名文件,系統重啟時會讀取此文件,所以hostname修改主機名是臨時的

7.2 hostnamectl

永久修改主機名,直接寫入主機名文件,重啟後仍然有效

[root@zic ~]# hostnamectl set-hostname zic		//永久修改主機名
[root@zic ~]# bash
[root@zic ~]# cat /etc/hostname 
zic

8. 其他

8.1 sleep

讓系統睡眠

[root@zic ~]# sleep 100		//讓系統睡眠100秒

8.2 time

顯示命令執行時間

[root@zic ~]# time sleep 3		//讓系統睡眠3秒並計算此命令執行所用時間
real	0m3.001s
user	0m0.001s
sys	0m0.000s

8.3 clear

清屏,和Ctrl+l一個性質

8.4 whoami | who | w

[root@zic ~]# whoami		//查看當前終端登錄的用戶
root

[root@zic ~]# who am i		//查看當前終端登錄的用戶
root     pts/0        2022-07-02 11:29 (192.168.169.1)

[root@zic ~]# who			//查看有哪些用戶線上
root     pts/0        2022-07-02 11:29 (192.168.169.1)
root     pts/1        2022-07-02 20:58 (192.168.169.1)
zic      pts/2        2022-07-02 20:58 (192.168.169.1)

[root@zic ~]# w			//查看當前線上的用戶和正在執行的命令
 21:01:46 up  9:32,  3 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.169.1    11:29    0.00s  3.71s  0.00s w
root     pts/1    192.168.169.1    20:58    3:14   0.00s  0.00s sleep 800
zic      pts/2    192.168.169.1    20:58    3:17   0.00s  0.00s -bash

8.5 which

顯示指定命令的絕對路徑

[root@zic ~]# which ls		//查看ls命令的絕對路徑
alias ls='ls --color=auto'
	/usr/bin/ls
	
[root@zic ~]# which cd		//查看cd命令的絕對路徑
/usr/bin/cd

8.6 date

顯示或設置日期與時間

[root@zzd ~]# date			// date不加任何參數用於顯示當前系統的時間
Sat Jul  2 15:51:20 CST 2022

[root@zzd ~]# date "+%Y-%m-%d %H:%M:%S"		// 格式化輸出時間
2022-07-02 15:59:54

[root@zzd ~]# date -s "2022-07-02 16:05:00"		// 帶上參數-s可以修改時間
Sat Jul  2 16:05:00 CST 2022

8.7 ldd

查看指定程式有哪些依賴庫文件

[root@zic ~]# ldd /usr/bin/ls			//查看ls命令執行所需的依賴庫
	linux-vdso.so.1 (0x00007fffeef5c000)
	libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f556da36000)
	libcap.so.2 => /lib64/libcap.so.2 (0x00007f556d830000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f556d46e000)
	libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007f556d1ea000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f556cfe6000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f556de83000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f556cdc6000)

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一:背景 1. 講故事 前段時間有位朋友在微信上找到我,說他的 web 系統 cpu 運行一段時候後就爆高了,讓我幫忙看一下是怎麼回事,那就看吧,聲明一下,我看 dump 是免費的,主要是錘煉自己技術,沒有某軟工程師高額的技術分析費。 😅😅😅 閑話不多說,我們上 windbg 說話。 二:Wi ...
  • 【微服務專題之】.Net6下集成消息隊列上-RabbitMQ ...
  • 最基礎的:UI-BLL-DAL 這是我們耳熟能詳的分層 (補充:) 我們的類正常都不是孤立存在的。很多都是要依賴於其它的類。 比如說我們有一個Work類,Work類在工作的時候需要把信息記錄下來。 MessageWriter就是 Worker的依賴項 首先我聽到依賴註入之後看似非常的複雜 實際則是: ...
  • 進入移動互聯網時代以來,Windows桌面開發已經很久不碰了。之前就是從做Windows開發入行的。 當年,還是C++ VC6, MFC的時代。那時候開發要查的是MSDN :-)。記憶體要自己管理, 排查記憶體泄漏(忘了釋放分配的記憶體)也是基本日常。光陰似箭,歲月如梭~! 幾年之前,北漂時需要寫一個wi ...
  • 1、下載地址:http://download.redis.io/releases/ 下載版本:redis-6.2.7.tar.gz 2、使用命令下載: wget http://download.redis.io/releases/redis-6.2.7.tar.gz 3、將文件拷貝到安裝目錄 /us ...
  • 問題:centos7出現無法聯網問題 如下圖所示,執行該命令: ping qq.com 出現如下情況: 解決方法: 首先cd到需要修改文件的所在目錄下: [root@localhost ~]# cd /etc/sysconfig/network-scripts/ 然後ls查看該目錄下的需要修改的網路 ...
  • RAID:獨立硬碟冗餘陣列,簡稱磁碟陣列 作用:用來來提升性能和冗餘(容錯性)。 RAID把多個硬碟組合成為一個邏輯硬碟,因此,操作系統只會把它當作一個實體硬碟 RAID實現的功能: 性能提升 磁碟冗餘(容錯性) RAID實現方式: 硬體實現:RAID卡(外接和主板內置) 生產環境一般永這種 軟體實 ...
  • 1、創建工作目錄 創建jar部署的目錄,並且將jar上傳到該目錄下 mkdir -p /home/java-server/test-demo 2、創建啟動腳本 進入jar目錄: cd /home/java-server/test-demo 創建腳本文件: vim start.sh 啟動腳本內容: # ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...