linux系統服務學習(一)Linux高級命令擴展

文章目錄

  • Linux高級命令(擴展)
  • 一、find命令
    • 1、find命令作用
    • 2、基本語法
    • 3、*星號通配符
    • 4、根據文件修改時間搜索文件
      • ☆ 聊一下Windows中的文件時間概念?
      • ☆ 使用stat命令獲取文件的最后修改時間
      • ☆ 創建文件時設置修改時間以及修改文件的修改時間
      • ☆ 根據文件的==最后修改時間==搜索文件
    • 5、擴展選項-exec選項
    • 6、根據文件的大小搜索文件
    • 7、dd擴展命令
  • 二、tree命令
    • 1、tree命令的主要作用
    • 2、使用yum命令安裝tree
    • 3、以樹狀結構顯示路徑下的文件信息
  • 三、scp命令
    • 1、scp命令的主要作用
    • 2、scp效果
    • 3、下載文件或目錄
    • 4、上傳文件或目錄
  • 四、計劃任務+tar命令實現文件備份
    • 1、回顧計劃任務
    • 2、計劃任務格式
    • 3、案例
    • 4、擴展命令:date
  • Linux高級命令(擴展)
  • 一、date命令
    • 1、date命令的作用
    • 2、獲取計算機的系統時間
    • 3、定制時間格式
    • 4、設置計算機的系統時間(慎用)
    • 5、ntpdate手工同步時間
  • 二、Linux下軟件的安裝方式
    • 1、Linux下有哪些軟件安裝方式
    • 2、軟件包類型
      • ☆ 二進制軟件包(rpm包)
      • ☆ 軟件源碼包(重點)
      • ☆ 二進制源碼包(.src.rpm)
    • 3、常見的二進制軟件包
    • 4、總結二進制包和源碼包區別
    • 5、二進制軟件包的安裝方式
    • 6、RPM軟件包安裝
      • ☆ 獲取軟件
      • ☆ 如何選擇合適的軟件
      • ☆ rpm軟件包的安裝、卸載以及升級

Linux高級命令(擴展)

一、find命令

1、find命令作用

在Linux操作系統中,find命令主要用于進行文件的搜索。

2、基本語法

# find 搜索路徑 [選項 選項的值] ...
選項說明:
-name :根據文件的名稱搜索文件,支持*通配符
-type :f代表普通文件、d代表文件夾

案例:搜索計算機中的所有文件,然后找到httpd.conf文件

# find /etc -name "httpd.conf" -type f

3、*星號通配符

在Linux操作系統中,我們想要查找的文件名稱不是特別清晰(只記住了前面或后面的字符),這個時候就可以使用*星號通配符了。

案例:獲取/etc目錄下,所有后綴名為.conf的文件信息

# find /etc -name "*.conf" -type f

案例:在/etc目錄下,搜索所有以httpd開頭的文件

# find /etc -name "httpd*" -type f

4、根據文件修改時間搜索文件

☆ 聊一下Windows中的文件時間概念?

創建時間:代表這個文件什么時間被創建

訪問時間:代表這個文件什么時間被訪問

修改時間:代表這個文件什么時間被修改

☆ 使用stat命令獲取文件的最后修改時間

# stat 文件名稱
Modify: 2020-03-31 10:25:20.609010605 +0800

☆ 創建文件時設置修改時間以及修改文件的修改時間

基本語法:

# touch -m -d "日期時間格式" 文件名稱

作用:① 如果文件不存在,則自動創建該文件,然后設置其最后的修改時間

? ② 如果文件存在,touch命令就是只修改文件的最后修改時間

案例:創建一個a.txt文件,設置最后修改時間為2020-03-30 00:00

# touch -m -d "2020-03-30 00:00" a.txt

案例:創建一個b.txt文件,然后在設置文件的最后修改時間為2020-03-29 00:00

# touch b.txt
# touch -m -d "2020-03-29 00:00" b.txt

案例:創建一個c.txt文件,設置最后修改時間為2020-03-28 00:00

# touch -m -d "2020-03-28 00:00" c.txt

☆ 根據文件的最后修改時間搜索文件

# find 搜索路徑 -mtime +days/-day3
-mtime :根據文件的最后修改時間搜索文件
+ :加號,代表搜索幾天之前的文件信息
- :減號,代表搜索幾天以內的文件信息

案例:搜索3天以前的文件信息(不包含第3天的,而且只搜索.txt格式)

# find ./ -name "*.txt" -mtime +3

案例:搜索3天以內的文件信息(只搜索.txt格式)

# find ./ -name "*.txt" -mtime -3

5、擴展選項-exec選項

案例:刪除Linux系統中/var/log目錄下10天以前的日志信息(日志文件格式*.log結尾)

# find /var/log -name "*.log" -mtime +10

第一種解決方案:使用管道命令|

# find /var/log -name "*.log" -mtime +10 |rm -rf

以上命令并不能正確的執行刪除操作,原因find命令不支持管道。

# find /var/log -name "*.log" -mtime +10 |xargs rm -rf

第二種解決方案:使用find命令 + -exec選項

基本語法:

# find /var/log -name "*.log" -mtime +10 -exec rm -rf {} \;

6、根據文件的大小搜索文件

基本語法:

# find 搜索路徑 -size [文件大小,常用單位:k,M,G]
size值  : 搜索等于size值大小的文件
-size值 : [0, size值)
+size值 : (size值,正無窮大)

案例:搜索/root目錄下大小為5M的文件信息

# find ./ -type f -size 5M

案例:搜索/root目錄下大小為5M以內的文件信息(5M>size>=0)

# find ./ -type f -size -5M

案例:搜索/目錄中,文件大小大于100M的文件信息(size>100M)

# find / -type f -size +100M

7、dd擴展命令

基本語法:

# dd if=/dev/zero of=文件名稱 bs=1M count=1
選項說明:
if代表輸入文件
of代表輸出文件
bs代表字節為單位的塊大小。
count代表被復制的塊。
其中/dev/zero是一個字符設備,會不斷返回0值字節。

主要功能:在Linux操作系統中,生成某個大小的測試文件!

案例:使用dd創建一個1M大小的sun.txt文件

# dd if=/dev/zero of=moon.txt bs=1M count=1

案例:使用dd創建一個5M大小的moon.txt文件

# dd if=/dev/zero of=moon.txt bs=5M count=1if = input file
of = output file

二、tree命令

1、tree命令的主要作用

Windows和Linux都有tree命令,主要功能是創建文件列表,將所有文件以樹的形式列出來

2、使用yum命令安裝tree

# yum install tree -y

3、以樹狀結構顯示路徑下的文件信息

案例:以樹狀結構顯示當前目錄下的文件信息

# tree 

案例:以樹狀結構顯示/var/log目錄下的文件信息

# tree /var/log

三、scp命令

1、scp命令的主要作用

scp命令的主要作用是實現Linux與Linux系統之間的文件傳輸。

完成以上實戰需要兩個Linux系統,解決方案可以使用克隆操作(先關機后克隆)快速生成一個Linux系統

2、scp效果

scp傳輸要求:兩臺計算機所使用的操作系統都必須是Linux操作系統。

ssh: connect to host 10.1.1.17 port 22: Connection refused
lost connection

出現以上問題的主要原因在于SCP命令時基于SSH協議,所以兩臺服務器的sshd服務必須處于開啟狀態,否則無法完成上傳與下載操作。

3、下載文件或目錄

基本語法:

# scp [選項] 用戶名@linux主機地址:資源路徑  linux本地文件路徑
選項說明:
-r :代表遞歸操作,主要針對文件夾

案例:從10.1.1.17服務器下載/root路徑下的video.mp4文件到本地的/root目錄下

10.1.1.16:

# scp root@10.1.1.17:/root/video.mp4 ./
The authenticity of host '10.1.1.17 (10.1.1.17)' can't be established.
ECDSA key fingerprint is SHA256:Wcxibo2ZQulm6bV+jEakz8IniwFgE6CUHopCxYjexrI.
ECDSA key fingerprint is MD5:48:25:21:93:ef:2b:22:25:5f:95:39:56:0c:8e:ff:75.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.1.1.17' (ECDSA) to the list of known hosts.
root@10.1.1.17's password:123456

案例:從10.1.1.17服務器下載/root路徑下的shop文件夾到本地的/root目錄下

# scp -r root@10.1.1.17:/root/shop ./
root@10.1.1.17's password:123456

4、上傳文件或目錄

基本語法:

# scp [選項] linux本地文件路徑 用戶名@linux主機地址:遠程路徑
選項說明:
-r :遞歸操作

案例:把10.1.1.16服務器上的/root/video.mp4上傳到10.1.1.17服務器的/root目錄下

10.1.1.16:

# scp /root/video.mp4 root@10.1.1.17:/root/

案例:把10.1.1.16服務器上的/root/shop文件夾上傳到10.1.1.17服務器的/root目錄下

10.1.1.16:

# scp -r /root/shop root@10.1.1.17:/root/

四、計劃任務+tar命令實現文件備份

1、回顧計劃任務

基本語法:

# crontab [選項]
-l : list縮寫,查詢當前用戶的計劃任務信息
-e : edit縮寫,編輯計劃任務

2、計劃任務格式

分 時 日 月 周 執行的命令(要求使用完整路徑,which命令)

在這里插入圖片描述

周的范圍比較特殊,正常情況下,只有周一 ~ 周日 1-7,但是計劃任務范圍0-7,0和7都代表周日

3、案例

案例:每天的凌晨2點0分把/etc目錄備份一次/tmp目錄下,要求把/etc打包成etc.tar.gz格式

# crontab -e
分 時 日 月 周 /usr/bin/tar -zcf /tmp/etc.tar.gz /etc
0 2 * * * /usr/bin/tar -zcf /tmp/etc.tar.gz /etc

以上案例雖然可以實現對/etc目錄的備份,但是有一個小缺點:每次備份時,生成的文件名稱是一致的,這樣后面備份的文件就會把前面備份的文件進行覆蓋!

案例:備份文件時,要求按時間作為備份文件的名稱

/tmp/etc-20200331.tar.gz

/tmp/etc-20200401.tar.gz

# crontab -e
0 2 * * * /usr/bin/tar -zcf /tmp/etc-$(date +"\%Y\%m\%d").tar.gz	/etc重點:
/tmp/etc-$(date +"\%Y\%m\%d").tar.gz

經驗之談:如果在編寫計劃任務時,出現了%百分號,前面必須添加一個反斜杠\進行轉義,否則計劃任務會失效!

4、擴展命令:date

基本語法:

# date +"時間格式"
%F : 年--%T : 小時:分鐘:秒
%Y : Year,%m : month,%d : day,%H : Hour,小時
%M : Minute,分鐘
%S : Second,

案例:獲取計算機的系統時間

# date

案例:獲取年月日信息

# date +""

Linux高級命令(擴展)

一、date命令

1、date命令的作用

date命令的主要作用:用于獲取計算機操作系統的系統時間

2、獲取計算機的系統時間

# date

3、定制時間格式

# date +"%F %T %Y %m %d %H %M %S"
%F : 2020-04-03
%T : 09:45:36
%Y : 年
%m : 月
%d : 日
%H : 小時
%M : 分鐘
%S : 秒

案例:獲取系統時間,時間格式要求20200403

# date +"%Y%m%d"

4、設置計算機的系統時間(慎用)

基本語法:

# date -s "年-月-日 小時:分鐘:秒"

案例:把當前系統時間設置為2020-04-10

# date -s "2020-04-10"

5、ntpdate手工同步時間

如果時間錯亂了,沒有關系,只需要使用ntpdate手工重置一下即可。

# ntpdate cn.ntp.org.cn

二、Linux下軟件的安裝方式

1、Linux下有哪些軟件安裝方式

① RPM軟件包管理(軟件名稱.rpm)

② YUM軟件包管理(使用yum命令install + 軟件名稱) => 下載 + 安裝一體化

③ 源碼編譯安裝(相對來說是最復雜的一種方式)

2、軟件包類型

☆ 二進制軟件包(rpm包)

在這里插入圖片描述

  1. 二進制包,指的是已經[^編譯]好了的軟件包,只需要直接安裝就可以使用。
  2. 二進制包,不需要編譯,直接下載安裝即可
  3. 二進制包,需要根據自己的計算機CPU以及操作系統去選擇合適

類似Windows中的.exe文件,如qq.exe

☆ 軟件源碼包(重點)

什么是源碼包?有什么特點?

  1. 源碼包,指的是程序員寫的原始的程序代碼文件不能直接在計算機上運行
  2. 源碼包,需要進行編譯,變成二進制的軟件包后,才可安裝使用
  3. 源碼包,一般可以在任何的計算機上安裝使用
  4. 源碼包,命名方式一般為:
    • 軟件包名.tar.gz
    • 軟件包名.tar.bz2
    • 軟件包名.tar.xz
    • 軟件包名.zip

類似于騰訊QQ開發工程師 => QQ的源代碼發給你了 .c => 編譯 => QQ.exe文件

☆ 二進制源碼包(.src.rpm)

什么是二進制源碼包?有什么特點?

  1. 二進制源碼包,是一個半成品,安裝后不能直接使用
  2. 二進制源碼包,需要使用rpmbuild工具重建成真正的rpm包或者重建成源碼包才可安裝使用
  3. 二進制源碼包,命名方式一般為:
    • mysql-community-5.7.25-1.el6.==src.==rpm
    • mysql-community-5.7.25-1.el7.src.rpm

3、常見的二進制軟件包

在這里插入圖片描述

4、總結二進制包和源碼包區別

在這里插入圖片描述

5、二進制軟件包的安裝方式

① 基于RPM進行安裝(先下載軟件然后本地進行安裝)

② 基于YUM進行安裝(在線下載然后安裝)

6、RPM軟件包安裝

☆ 獲取軟件

Linux只是內核,Linux發行版本:GNU/Linux

  1. RedHat/Centos光盤或官方網站 ftp://ftp.redhat.com
  2. 推薦網站
    • www.rpmfind.net
    • rpm.pbone.net
  3. 相應軟件官方網站
    • http://www.mysql.com
    • http://nginx.org/packages/

☆ 如何選擇合適的軟件

  1. 選擇適合當前系統的版本號
    • 找不到適合的,才去嘗試別的系統版本號
    • el6兼容el5;el5無法安裝 el6
  2. 選擇適合當前計算機cpu的架構
    • x86_64包,只能安裝在64位的系統上
    • i386,i586,i686的軟件包可以安裝在32和64位系統上
    • noarch表示這個軟件包與硬件構架無關,可以通用
    • 32位系統不能安裝64位包

建議: 建議不要跨大版本號去安裝軟件包,盡量使用當前系統版本自帶軟件包安裝

☆ rpm軟件包的安裝、卸載以及升級

安裝:

# rpm -ivh 軟件包名稱

卸載:

# rpm -e 軟件包名稱 [--nodeps強制]

查詢:

# rpm -q 軟件名稱# rpm -qa |grep 軟件名稱

升級:

# rpm -Uvh 軟件包名稱

注:rpm -Uvh不僅可以升級軟件,其實它也可以安裝軟件。

RPM包管理:以上操作都比較簡單,但是在實際應用過程中,可能會遇到問題,很多rpm軟件包在安裝時都會提示軟件依賴。那這個問題如何解決呢?

方法一:根據提示一個一個軟件包安裝,先解決依賴在回來安裝軟件

方法二:使用yum install 安裝rpm軟件包

# yum install 軟件名稱.rpm

以上安裝方式的最大好處是,如果安裝軟件時,產生了依賴,不用擔心,yum會自動幫助我們解決這些問題的!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/38060.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/38060.shtml
英文地址,請注明出處:http://en.pswp.cn/news/38060.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Vue】Vue2創建移動端項目實戰教程,創建移動端項目保姆級教程,設置axios,utils工具包,vue.fonfig.js配置項 (下)

系列文章目錄 這里是創建移動端項目 【Vue】Vue2.x創建項目全程講解,保姆級教程,手把手教,Vue2怎么創建項目(上) 【Vue】Vue2創建移動端項目實戰教程,創建移動端項目保姆級教程,接上一篇創建Vue…

2023牛客暑期多校訓練營9 B.Semi-Puzzle: Brain Storm

文章目錄 題目大意題解求解回溯 參考代碼 題目大意 給定兩個數 a , m a,m a,m ,求滿足 a u ≡ u ( m o d m ) a^u \equiv u (mod\ \ m) au≡u(mod m) 的一個解。 ( 1 ≤ a , m ≤ 1 0 9 , 0 ≤ u ≤ 1 0 18 ) (1\leq a,m \leq10^9 ,0\leq u\leq 10^{18}) (1≤a…

玩賺音視頻開發高階技術——FFmpeg

隨著移動互聯網的普及,人們對音視頻內容的需求也不斷增加。無論是社交媒體平臺、電商平臺還是在線教育,都離不開音視頻的應用。這就為音視頻開發人員提供了廣闊的就業機會。根據這些年來網站上的音視頻開發招聘需求來看,音視頻開發人員的需求…

如何優雅的使用Mock Server

事出有因 昨天跟同事討論我們在用的rap2(一個集接口編寫和mock server的開源項目)和剛上線了一個easy-mock的server,到底哪個好用。 我們主要討論的點有個兩個: 接口的一致性、 編碼的無侵入性。 背景 自從前后端分離后,完成前后端的分工…

【計算機視覺|生成對抗】條件生成對抗網絡(CGAN)

本系列博文為深度學習/計算機視覺論文筆記,轉載請注明出處 標題:Conditional Generative Adversarial Nets 鏈接:[1411.1784] Conditional Generative Adversarial Nets (arxiv.org) 摘要 生成對抗網絡(Generative Adversarial…

Windows 11 家庭中文版找不到組策略文件gpedit.msc

最近因為調整日期問題需要用到組策略文件gpedit.msc,但是發現找不到文件 在按鍵盤 winR 打開運行界面輸入 gpedit.msc 回車 Windows找不到文件’gpedit.msc’。請確定文件名是否正確后,再試-次。 檢查電腦Windows系統版本 是 Windows 11 家庭中文版 果斷早網上搜…

C++模板元編程入門案例

C++模板元編程(Template Metaprogramming)是一種在編譯時進行計算和代碼生成的技術,它使用C++的模板機制來實現。 下面是一個簡單的C++模板元編程的示例,展示了如何在編譯時計算一個數的階乘。 #include <iostream> template <int N> struct Factorial { …

docker 學習--02 常用命令

docker 學習–02 常用命令 文章目錄 docker 學習--02 常用命令1. 幫助啟動類命令1.1啟動docker1.2 停止docker1.3 重啟docker1.4 查看docker1.5 設置開機自啟1.6 查看docker概要信息1.7 查看docker總體幫助文檔1.8 查看docker命令幫助文檔 2. 鏡像命令2.1 列出本地主機上有的鏡…

Jmeter 參數化的幾種方法

目錄 配置元件-用戶自定義變量 前置處理器-用戶參數 配置元件-CSV Data Set Config Tools-函數助手 配置元件-用戶自定義變量 可在測試計劃、線程組、HTTP請求下創建用戶定義的變量 全局變量&#xff0c;可以跨線程組調用 jmeter執行的時候&#xff0c;只獲取一次&#xff0…

kafka 02——三個重要的kafka客戶端

kafka 02——三個重要的kafka客戶端 1. 前言1.1 關于 Kafka 的安裝1.2 常用客戶端簡介1.3 依賴 2. AdminClient2.1 Admin Configs2.2 AdminClient API2.2.1 設置 AdminClient 對象2.2.2 創建 topic 獲取 topic 列表2.2.3 刪除topic2.2.4 查看 topic 的描述信息2.2.5 查看 topi…

【復習8-13天】每天40min,我們一起用70天穩扎穩打學完《JavaEE初階》——14/70 第十四天

專注 效率 記憶 預習 筆記 復習 做題 歡迎觀看我的博客,如有問題交流,歡迎評論區留言,一定盡快回復!(大家可以去看我的專欄,是所有文章的目錄)   文章字體風格: 紅色文字表示:重難點★? 藍色文字表示:思路以及想法★?   如果大家覺得有幫助的話,感謝大家幫忙 點…

【騰訊云 TDSQL-C Serverless 產品體驗】基于TDSQL-C 存儲爬取的QQ音樂歌單數據

【騰訊云 TDSQL-C Serverless 產品體驗】基于TDSQL-C 存儲爬取的QQ音樂歌單數據 文章目錄 【騰訊云 TDSQL-C Serverless 產品體驗】基于TDSQL-C 存儲爬取的QQ音樂歌單數據前言出現的背景一、TDSQL-C數據庫是什么&#xff1f;二、TDSQL-C 的特點三、TDSQL-C的應用場景四、基于TD…

測試相關Liunx基礎知識

Linux的歷史和安裝 基本常識 Liunx目錄結果 常見

CTF之逆向之阿里巴巴

題目地址&#xff1a;http://www.shiyanbar.com/ctf/13 題目預覽&#xff1a; 解題過程&#xff1a; 1、下載附件發現是exe文件 2、使用PEid和Detect It Easy查殼 和 開發語言&#xff0c;發現沒有加殼&#xff0c;都是用C#開發的 3、C#和Java Python屬于解釋型語言&#xff…

Win10安裝GPU支持的最新版本的tensorflow

我在安裝好cuda和cudnn后&#xff0c;使用pip install tensorflow安裝的tensorflow都提示不能找到GPU&#xff0c; 為此懷疑默認暗轉的tensorflow是不帶GPU支持的。 在tensorflow官網提供了多個版本的GPU支持的windows的安裝包 https://www.tensorflow.org/install/pip?hlz…

用ChatGPT和六頂帽思考法幫助自己更好地決策和解決問題

當我們在解決復雜問題時&#xff0c;我們常常陷入單一視角的狀態。創造性思維領域的先驅愛德華德博諾&#xff0c;提出了六頂帽思考法[1]&#xff0c;這意味著我們可以從六個不同的視角來思考一個問題&#xff0c;以實現高水平決策和解決問題。 每一頂“帽子”代表不同的視角。…

阿里云國際版CDN使用教程!

當網站流量達到一定值后&#xff0c;勢必會造成網站訪問卡堵&#xff0c;這時候阿里云CDN將會一個很好的選擇&#xff0c;阿里云 CDN 是由全球分布式邊緣節點組成的虛擬網絡。阿里云 CDN 可減少源站負載&#xff0c;防止網絡擁塞&#xff0c;使用阿里云 CDN 加速圖像、小文件、…

SAP ME2L/ME2M/ME3M報表增強添加字段(包含:LMEREPI02、SE18:ES_BADI_ME_REPORTING)

ME2L、ME2M、ME3M這三個報表的字段增強&#xff0c;核心點都在同一個結構里 SE11:MEREP_OUTTAB_PURCHDOC 在這里加字段&#xff0c;如果要加的字段是EKKO、EKPO里的數據&#xff0c;直接加進去&#xff0c;啥都不用做&#xff0c;就完成了 如果要加的字段不在EKKO和EKPO這兩個…

LabVIEW控制通用工作臺

LabVIEW控制通用工作臺 用于教育目的的計算機化實驗室顯著增長&#xff0c;特別是用于運動控制的實驗室。它們代表了各種工業應用中不斷擴大的領域&#xff0c;并成為以安全的方式使用通常昂貴或獨特的實驗室設備進行實時實驗的寶貴工具。NI LabVIEW等軟件應用程序的開發和不斷…

Linux 中復制文件并保持修改時間等屬性

一、遇到的問題 Linux使用cp命令復制文件備份時&#xff0c;發現文件的修改時間變成當前時間了&#xff0c;想要保留備份文件原有的修改時間及其它文件屬性。 二、實現 1、cp命令 在 Linux 中&#xff0c;你可以使用 cp 命令來復制文件&#xff0c;并通過 -p 或 --preserve…