Linux學習01

来源:https://www.cnblogs.com/tulipgirl/archive/2018/11/11/9941147.html
-Advertisement-
Play Games

Linux學習第一天 1.使用VM安裝RHEL7.0 具體參見劉遄老師的《Linux就該怎麼學》https://www.linuxprobe.com/chapter 01.html 2.RPM(紅帽軟體包管理器) RPM通過將安裝規則與源代碼打包在一起,來降低軟體的安裝難度。 RPM = 源代碼 + ...


Linux學習第一天

1.使用VM安裝RHEL7.0

具體參見劉遄老師的《Linux就該怎麼學》https://www.linuxprobe.com/chapter-01.html

2.RPM(紅帽軟體包管理器)

RPM通過將安裝規則與源代碼打包在一起,來降低軟體的安裝難度。

RPM = 源代碼 + 安裝規則

3.Yum軟體倉庫

通過將大量常用的RPM軟體存放在一起,解決軟體安裝之間的依賴關係,進一步降低軟體的安裝難度。

4.systemd初始化進程

4-1 Linux系統的開機過程

BIOS ->Boot Loader ->系統內核->內核初始化->啟動初始化進程

這裡的初始化進程即systemd。

systemd採用併發啟動機制,開機速度提升不小。

4-2 systemctl

RHEL7.0系統使用systemclt命令來管理服務。

主要命令:

命令 作用
systemctl start foo.service 啟動服務
systemctl restart foo.service 重啟服務
systemctl stop foo.service 關閉服務
systemctl status foo.service 查看服務狀態
systemctl enable foo.service 開機自啟
systemctl disable foo.service 關閉開機自啟
systemctl is-enable foo.service 查看是否開機自啟

5.Shell

5-1 什麼是shell?

Shell(也稱為終端或殼)充當的是人與內核(硬體)之間的翻譯官,用戶把一些命令“告訴”終端,它就會調用相應的程式服務去完成某些工作。現在包括紅帽系統在內的許多主流Linux系統預設使用的終端是Bash(Bourne-Again SHell)解釋器。主流Linux系統選擇Bash解釋器作為命令行終端主要有以下4項優勢:

1:通過上下方向鍵來調取過往執行過的Linux命令;
2:命令或參數僅需輸入前幾位就可以用Tab鍵補全;
3:具有強大的批處理腳本;
4:具有實用的環境變數功能。

5-2 執行查看幫助命令

常見Linux命令格式:

命令名稱 [命令參數] [命令對象]

註意,命令名稱、命令參數、命令對象之間請用空格鍵分隔。
命令參數分長格式和短格式:

短格式 : -字母 -a -l -s

長格式 : -單詞 -all - list -sort

只有短格式參數可以合併,例如 ps -aux = ps -a -u -x

5-3 常用系統工作命令

echo命令

echo命令用於在終端輸出字元串或變數提取後的值,格式為“echo [字元串 | $變數]”。

例如,把指定字元串“Linuxprobe.com”輸出到終端屏幕的命令為:

[root@linuxprobe ~]# echo Linuxprobe.com

該命令會在終端屏幕上顯示如下信息:

Linuxprobe.com

下麵,我們使用$變數的方式提取變數SHELL的值,並將其輸出到屏幕上:

[root@linuxprobe ~]# echo $SHELL
/bin/bash

date命令

date命令用於顯示及設置系統的時間或日期,格式為“date [選項] [+指定的格式]”。

只需在強大的date命令中輸入以“+”號開頭的參數,即可按照指定格式來輸出系統的時間或日期,這樣在日常工作時便可以把備份數據的命令與指定格式輸出的時間信息結合到一起。例如,把打包後的文件自動按照“年-月-日”的格式打包成“backup-2017-9-1.tar.gz”,用戶只需要看一眼文件名稱就能大概瞭解到每個文件的備份時間了。date命令中常見的參數格式及作用如表所示。

命令 作用
%t 跳格[Tab鍵]
%H 小時(00~23)
%I 小時(00~12)
%M 分鐘(00~59)
%S 秒(00~59)
%j 今年中的第幾天

按照預設格式查看當前系統時間的date命令如下所示:

[root@linuxprobe ~]# date
Mon Aug 24 16:11:23 CST 2017

按照“年-月-日 小時:分鐘:秒”的格式查看當前系統時間的date命令如下所示:

[root@linuxprobe ~]# date "+%Y-%m-%d %H:%M:%S"
2017-08-24 16:29:12

將系統的當前時間設置為2017年9月1日8點30分的date命令如下所示:

[root@linuxprobe ~]# date -s "20170901 8:30:00"
Fri Sep 1 08:30:00 CST 2017

再次使用date命令並按照預設的格式查看當前的系統時間,如下所示:

[root@linuxprobe ~]# date
Fri Sep 1 08:30:01 CST 2017

date命令中的參數%j可用來查看今天是當年中的第幾天。這個參數能夠很好地區分備份時間的新舊,即數字越大,越靠近當前時間。該參數的使用方式以及顯示結果如下所示。

[root@linuxprobe ~]# date "+%j"
244

reboot命令

reboot命令用於重啟系統,其格式為reboot。

由於重啟電腦這種操作會涉及硬體資源的管理許可權,因此預設只能使用root管理員來重啟,其命令如下:

[root@linuxprobe ~]# reboot

poweroff命令

poweroff命令用於關閉系統,其格式為poweroff。

該命令與reboot命令相同,都會涉及硬體資源的管理許可權,因此預設只有root管理員才可以關閉電腦,其命令如下:

[root@linuxprobe ~]# poweroff

wget命令

wget命令用於在終端中下載網路文件,格式為“wget [參數] 下載地址”。

ps命令

ps命令用於查看系統中的進程狀態,格式為“ps [參數]”。

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
進程的所有者 進程ID號 運算器占用率 記憶體占用率 虛擬記憶體使用量(單位是KB) 占用的固定記憶體量(單位是KB) 所在終端 進程狀態 被啟動的時間 實際使用CPU的時間 命令名稱與參數
root 1 0.0 0.4 53684 7628 ? Ss 07:22 0:02 /usr/lib/systemd/systemd
root 2 0.0 0.0 0 0 ? S 07:22 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 07:22 0:00 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 07:22 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S 07:22 0:00 [migration/0]

top命令

top命令用於動態地監視進程活動與系統負載等信息,其格式為top。

pidof命令

pidof命令用於查詢某個指定服務進程的PID值,格式為“pidof [參數] [服務名稱]”。
每個進程的進程號碼值(PID)是唯一的,因此可以通過PID來區分不同的進程。例如,可以使用如下命令來查詢本機上sshd服務程式的PID:

[root@linuxprobe ~]# pidof sshd
2156

kill命令

kill命令用於終止某個指定PID的服務進程,格式為“kill [參數] [進程PID]”。

接下來,我們使用kill命令把上面用pidof命令查詢到的PID所代表的進程終止掉,其命令如下所示。這種操作的效果等同於強制停止sshd服務。

[root@linuxprobe ~]# kill 2156

killall命令

killall命令用於終止某個指定名稱的服務所對應的全部進程,格式為:“killall [參數] [服務名稱]”。

通常來講,複雜軟體的服務程式會有多個進程協同為用戶提供服務,如果逐個去結束這些進程會比較麻煩,此時可以使用killall命令來批量結束某個服務程式帶有的全部進程。下麵以httpd服務程式為例,來結束其全部進程。由於RHEL7系統預設沒有安裝httpd服務程式,因此大家此時只需看操作過程和輸出結果即可,等學習了相關內容之後再來實踐。

[root@linuxprobe ~]# pidof httpd
13581 13580 13579 13578 13577 13576
[root@linuxprobe ~]# killall httpd
[root@linuxprobe ~]# pidof httpd
[root@linuxprobe ~]# 

如果我們在系統終端中執行一個命令後想立即停止它,可以同時按下Ctrl + C組合鍵(生產環境中比較常用的一個快捷鍵),這樣將立即終止該命令的進程。或者,如果有些命令在執行時不斷地在屏幕上輸出信息,影響到後續命令的輸入,則可以在執行命令時在末尾添加上一個&符號,這樣命令將進入系統後臺來執行。


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

-Advertisement-
Play Games
更多相關文章
  • " 【.NET Core項目實戰 統一認證平臺】開篇及目錄索引 " 從本文開始,我們正式進入項目研發階段,首先我們分析下統一認證平臺應該具備哪些功能性需求和非功能性需求,在梳理完這些需求後,設計好系統採用的架構來滿足已有的需求和未來的擴展應用。 1 功能性需求 統一認證平臺應該具備以下基本功能,本文 ...
  • CRC校驗(迴圈冗餘校驗)小知識 CRC即迴圈冗餘校驗碼(Cyclic Redundancy Check):是數據通信領域中最常用的一種查錯校驗碼,其特征是信息欄位和校驗欄位的長度可以任意選定。迴圈冗餘檢查(CRC)是一種數據傳輸檢錯功能,對數據進行多項式計算,並將得到的結果附在幀的後面,接收設備也 ...
  • 昨天寫代碼的過程中接觸到 Visual Studio 的自定義代碼段,寫個筆記跟大家分享。 ...
  • 一、前言 1、本教程主要內容 ASP.NET Core MVC 視圖引擎(Razor)簡介 ASP.NET Core MVC 視圖(Razor)ViewData使用示例 ASP.NET Core MVC 視圖(Razor)ViewBag使用示例 ASP.NET Core NVC 視圖(Razor)強 ...
  • chgrp 改變文件或者目錄所屬的群組,使用參數“--reference”,可以改變文件的群組為指定的關聯文件群組。 此命令的適用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。 1、語法 chgrp [選項] group file chgrp [ ...
  • 一、描述電腦的組成及其功能。 電腦系統是由硬體系統(hardware)和軟體系統(software system)兩部分組成。 硬體系統: 從硬體基本結構上來講,電腦是由運算器、控制器、存儲器、輸入設備、輸出設備五大部分組成的,每一部分分別按要求執行特定的基本功能。 1、運算器(算數邏輯單元A ...
  • 準備工作: 1.安裝VMware workstation 軟體 2.下載好kali linux 的ios系統文件 3.打開電腦的虛擬化支持(Intel VT-x/EPT或AMD-V/RVI(V)) 虛擬機設置: 1.在VMware虛擬機中新建虛擬機,如圖 2.點擊瀏覽,選擇Kali Linux的安裝 ...
  • 1、前言 本來在寫【Linux】【Apatch Tomcat】安裝與運行。都快寫完了。 結果。。。我忘記安裝 Java 環境 然後。。。新開了博客編輯頁面。 最後。。。我的那個沒了。。。沒了。。。真的刺激。。。 2、開始 1、yum list | grep java-1.8 查看yum 庫中java ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...