初遇Linux

来源:https://www.cnblogs.com/believepd/archive/2018/08/22/9520385.html
-Advertisement-
Play Games

Ctrl+Alt+(F1-F6):切換虛擬終端 Ctrl+Alt:滑鼠切換界面 $:普通用戶登錄後系統的提示符 #:root用戶登錄後系統的提示符 Linux命令 exit 用於退出目前的shell who 用於顯示系統中有哪些使用者正在上面,顯示的資料包含了使用者ID、使用的終端機、從哪邊連上來的 ...


Ctrl+Alt+(F1-F6):切換虛擬終端

Ctrl+Alt:滑鼠切換界面

$:普通用戶登錄後系統的提示符

#root用戶登錄後系統的提示符

 

Linux命令

exit  用於退出目前的shell

 

who  用於顯示系統中有哪些使用者正在上面,顯示的資料包含了使用者ID、使用的終端機、從哪邊連上來的、上線時間、呆滯時間、CPU 使用量、動作等等

 

whoami  用於顯示自身用戶名稱,本指令相當於執行"id -un"指令

 

date  用來顯示或設定系統的日期與時間

 

clear  清屏(Ctrl+l

 

su  用於變更為其他使用者的身份,除 root 外,需要鍵入該使用者的密碼

例:su - root    #切換到root用戶

 

cd  用於切換當前工作目錄至 dirName(目錄參數);其中 dirName 表示法可為絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的 home 目錄 (也就是剛 login 時所在的目錄);另外,"~" 也表示為 home 目錄 的意思,"." 則是表示目前所在的目錄,".." 則表示目前目錄位置的上一層目錄

例:cd /usr/bin/    #跳到 /usr/bin/

cd ~    #跳到自己的 home 目錄

cd ../..    #跳到目前目錄的上上兩層

 

useradd  用於建立用戶帳號;帳號建好之後,再用passwd設定帳號的密碼.而可用userdel刪除帳號;使用useradd指令所建立的帳號,實際上是保存在/etc/passwd文本文件中

 

passwd  用來更改使用者的密碼

例:passwd pd    #設置pd用戶的密碼

 

usermod  用來修改用戶帳號的各項設定

 

ls  用於顯示指定工作目錄下之內容(列出目前工作目錄所含之文件及子目錄)

語法:ls -al name

      ls -i /pd.txt    #查看pd.txtinode

-a 顯示所有文件及目錄 (ls內定將文件名或目錄名稱開頭為"."的視為隱藏檔,不會列出)

-l 除文件名稱外,亦將文件型態、許可權、擁有者、文件大小等資訊詳細列出

 

pwd 用於顯示工作目錄;執行pwd指令可立刻得知您目前所在的工作目錄的絕

對路徑名稱

 

cp  主要用於複製文件或目錄

 

mv  用來為文件或目錄改名、或將文件或目錄移入其它位置

例:mv aa bb    #將文件aa更名為bb

mv info/ logs    #info目錄放入logs目錄中。註意,如果logs目錄不存在,則該命令將info改名為logs

 

mkdir  用於建立名稱為dirName之子目錄

參數:-p 確保目錄名稱存在,不存在的就建一個

例:mkdir aa    #在工作目錄下,建立一個名為aa的子目錄

mkdir -p bb/Test    #在工作目錄下的bb目錄中,建立一個名為 Test 的子目錄;若bb目錄原本不存在,則建立一個;(註:本例若不加 -p,且原本bb目錄不存在,則產生錯誤)

 

touch  用於修改文件或者目錄的時間屬性,包括存取時間和更改時間;若文件不存在,系統會建立一個新的文件;ls -l 可以顯示檔案的時間記錄

例:touch text.txt    #新建text.txt

    touch {1..9}.txt    #相當於9條命令,新建1.txt9.txt

 

rm  用於刪除一個文件或者目錄

rm text.txt    #刪除文件text.txt

rm -r homework    #刪除目錄homework

rm -r *    #刪除當前目錄下的所有文件及目錄

 

#刪除文件可以直接使用rm命令,若刪除目錄則必須配合選項"-r"

文件一旦通過rm命令刪除,則無法恢復,所以必須格外小心地使用該命令

 

cat  用於連接文件並列印到標準輸出設備上

例:cat text.txt    #查看text.txt裡面的內容

 

head  指定顯示頭部內容的文件列表

例:head -n file    #顯示file文件的前n行(不帶-n預設顯示10行)

 

tail  可用於查看文件的內容,有一個常用的參數 -f 常用於查閱正在改變的日誌文件;tail -f file會把 file文件里的最尾部的內容顯示在屏幕上,並且不斷刷新,只要 file更新就可以看到最新的文件內容

例:tail -n file    #顯示file文件的後n行(不帶-n預設顯示10行)

tail -f file    #跟蹤名為file文件的增長情況

 

more  命令類似 cat ,不過會以一頁一頁的形式顯示,更方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)就往下一頁顯示,按 b 鍵就會往回(back)一頁顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說明文件,請按 h

例:more +n file    #從第n行開始顯示file文檔內容

 

less   more 類似,但使用 less 可以隨意瀏覽文件,而 more 僅能向前移動,卻不能向後移動,而且 less 在查看之前不會載入整個文件

 

groupadd  用於創建一個新的工作組,新工作組的信息將被添加到系統文件中

 

groupmod  用於更改群組識別碼或名稱

[[email protected] ~]# groupadd linuxso

[[email protected] ~]# tail -1 /etc/group

linuxso:x:500:

[[email protected] ~]# groupmod -n linux linuxso

[[email protected] ~]# tail -1 /etc/group

linux:x:500:

 

chgrp  用於變更文件或目錄的所屬群組;在UNIX系統家族裡,文件或目錄許可權的掌控以擁有者及所屬群組來管理。您可以使用chgrp指令去變更文件與目錄的所屬群組,設置方式採用群組名稱或群組識別碼皆可

 

chown  Linux/Unix 是多人多工操作系統,所有的文件皆有擁有者;利用 chown 將指定文件的擁有者改為指定的用戶或組,用戶可以是用戶名或者用戶ID;組可以是組名或者組ID;文件是以空格分開的要改變許可權的文件列表,支持通配符;一般來說,這個指令只有是由系統管理者(root)所使用,一般使用者沒有許可權可以改變別人的文件擁有者,也沒有許可權可以自己的文件擁有者改設為別人;只有系統管理者(root)才有這樣的許可權

說明:chown 屬主.屬組 參數    #改屬主屬組

      chown 屬主 參數    #只改屬主

      chown .屬組 參數    #只改屬組

      chown -R屬主.屬組 text(text/aa/bb/)    #遞歸改text目錄及目錄下所有文件的屬主屬組(遞歸改bb目錄及目錄下所有文件的屬主屬組)

 

chmod  Linux/Unix 的文件調用許可權分為三級 : 文件擁有者、群組、其他;利用 chmod 可以藉以控制文件如何被他人所調用

  1. u 表示該文件的擁有者,g 表示與該文件的擁有者屬於同一個群體(group者,o 表示其他以外的人,a 表示這三者皆是
  2. r4)表示可讀取,w2)表示可寫入,x1)表示可執行

例:chmod -R file    #file目錄下的所有與子目錄進行相同的許可權變更(即以遞迴的方式逐個變更)

    chmod 777 file    #file文件ugo的許可權改為可讀可寫可執行

 

./  運行命令

 

Linux下可以用 ll 命令來判斷文件類型,主要是根據每行的首個字元來判斷

例:ll -d tmp/aa/bb/cc/    #查看cc目錄的許可權信息(-d專門用來查看目錄文件類型)

-rw-r--r--    #” - ”開頭的都是普通文件

drw-r--r--    #” d ”開頭的是目錄文件

brw-r--r--    #” b ”開頭的文件都是塊設備文件

crw-r--r--    #” c ”開頭的文件都是字元設備文件

srw-r--r--    #” s ”開頭的文件都是socket文件

prw-r--r--    #” p “開頭的文件都是管道文件

lrw-r--r--    #” l ”開頭的文件都是軟鏈接文件

 

>  左邊的內容覆蓋右邊的內容

>>  左邊的內容追加給右邊的內容

 

wc  可以計算文件的Byte數、字數、或是列數,若不指定文件名稱、或是所給予的文件名為"-",則wc指令會從標準輸入設備讀取數據

例:wc -l /etc/passwd    #顯示passwd文件有多少行

 

tar  用來建立,還原備份文件的工具程式,它可以加入,解開備份文件內的文件

 

參數:-c--create建立新的備份文件

-v--verbose顯示指令執行過程

-f<備份文件>--file=<備份文件>指定備份文件

 

#查看test.tar文件里的內容

參數:-t--list 列出備份文件的內容

 #解開(不是解壓)文件以及解開到opt目錄下

 

gzip  是個使用廣泛的壓縮程式命令,文件經它壓縮過後,其名稱後面會多出".gz"的擴展名

 

 

gunzip  是個使用廣泛的解壓縮程式命令,它用於解開被gzip壓縮過的文件,這些壓縮文件預設最後的擴展名為".gz";事實上gunzip就是gzip的硬連接,因此不論是壓縮或解壓縮,都可通過gzip指令單獨完成

 

bzip2  採用新的壓縮演演算法,壓縮效果比傳統的LZ77/LZ78壓縮演演算法來得好;若沒有加上任何參數,bzip2壓縮完文件後會產生.bz2的壓縮文件,並刪除原始的文件

 

參數:-v--verbose壓縮或解壓縮文件時,顯示詳細的信息

 

bunzip2  可解壓縮.bz2格式的壓縮文件;bunzip2實際上是bzip2的符號連接,執行bunzip2bzip2 -d的效果相同

 

 

Ctrl+a  游標移動到該跳命令首部

Ctrl+e  游標移動到該調命令尾部

Ctrl+c  取消當前命令

 

ps   用於顯示當前進程 (process) 的狀態

:ps aux |grep “bash” |grep -v  “grep”

 

Kill  用於刪除執行中的程式或工作

例:kill -9 123456    #強制殺死123456進程

 

vi/vim  所有的 Unix Like 系統都會內建 vi 文書編輯器,其他的文書編輯器則不一定會存在;但是目前我們使用比較多的是 vim 編輯器;vim 具有程式編輯的能力,可以主動的以字體顏色辨別語法的正確性,方便程式設計

 

vivim編輯器有三種模式:命令行模式、編輯模式、擴展模式

命令行模式:

a、io  進入編輯狀態

u  複原上一步操作

dd  刪除游標所在的那一行

ndd  n為數字,刪除游標所在的向下n行;例如5dd則是刪除5

yy  複製所在游標的那一行

nyy  n為數字,複製游標所在的向下n行,例如5yy則是複製5

p(小寫)  將已複製的數據在游標下一行黏貼

P(大寫)  將已複製的數據在游標上一行黏貼

ctrl+r  重做上一步操作

使用複製命令後np  n為數字,將已複製的數據在游標上/下一行黏貼n

使用刪除命令後按p  可以理解為剪切再粘貼

0  游標移動到該行的行首

$  游標移動到該行的行尾

G  游標移動到這個文件的最後一行

nG  n為數字,游標移動到這個文件的第n行;例如5G則是移動到第5

gg  移動到這個文件的第一行,相當於1G

H  游標移動到這個屏幕的最上方那一行的第一個字元

M  游標移動到這個屏幕的中央那一行的第一個字元

L  游標移動到這個屏幕的最下方那一行的第一個字元

擴展模式:

Escwq!  w為保存  q為退出    !為強制

set nu  顯示文件行號

 

Linux系統引導順序:bios--->mbr--->grub--->kernel--->init

 

fdisk  是一個創建和維護分區表的程式,它相容DOS類型的分區表、BSD或者SUN類型的磁碟列表

例:fdisk -l /dev/sda    #創建分區

 

mksf  用於在特定的分區上建立 linux 文件系統(格式化)

例:mkfs.ext4 /dev/sda4    #sda4分區格式化為ext4格式

 

mount   用於掛載Linux系統外的文件

例:mount /dev/hda1 /mnt     #/dev/hda1 掛在 /mnt 之下

    mount -o ro /dev/hda1 /mnt     #/dev/hda1 用唯讀模式掛在 /mnt 之下

mount -o rw /dev/hda1 /mnt     #/dev/hda1 用可讀寫模式掛在 /mnt 之下

 

何為掛載?

linux操作系統中,掛載是指將一個設備(通常是存儲設備)掛接到一個已存在的目錄上;我們要訪問存儲設備中的文件,必須將文件所在的分區掛載到一個已存在的目錄上,然後通過訪問這個目錄來訪問存儲設備

 

 

umount  用於卸除文件系統;可卸除目前掛在Linux目錄中的文件系統

 

 

df  用於顯示目前在Linux系統上的文件系統的磁碟使用情況統計

 

 

du  用於顯示目錄或文件的大小;會顯示指定的目錄或文件所占用的磁碟空間

 

 

ln  為某一個文件在另外一個位置建立一個同步的鏈接;當我們需要在不同的目錄,用到相同的文件時,我們不需要在每一個需要的目錄下都放一個必須相同的文件,我們只要在某個固定的目錄,放上該文件,然後在其它的目錄下用ln命令鏈接(link)它就可以,不必重覆的占用磁碟空間

ln軟鏈接:

格式:ln -s 源路徑 目標路徑

特點:1.相當於win中的快捷方式

      2.刪除鏈接文件,源文件無影響

      3.刪除源文件,鏈接文件失效

      4.修改源文件/鏈接文件,內容都變

      5.軟鏈接是指向文件名的

 

軟鏈接中:source.txtdex.txtinode號不同

 

ln硬鏈接:

格式:ln 源路徑 目標路徑

特點:1.刪除鏈接文件,源文件無影響

      2.刪除源文件,鏈接文件無影響

      3.修改源文件/鏈接文件,內容都改

      4.硬鏈接執行inode

硬鏈接中:a.txtb.txtinode號相同

 

軟鏈接可以跨分區;硬鏈接中a.txtnew.txtinode號可以一樣,但是他們在不同分區中,導致不在同一個block塊,所以硬鏈接不可以跨分區

 

4段8位二進位數表示ip地址

 

172.16.122.204/16------->16為子網掩碼

網路地址:172.16.0.0

主機地址:172.16.122.204

 

ip地址中的網路位和主機位固定下來後,ip地址被分成了不同的幾類:A類、B類、C類、D類、E類;這裡展示前3類

 

特殊ip地址

 

ifconfig  用於顯示或設置網路設備;可設置網路設備的狀態,或是顯示目前的設置

 

chkconfig  用於檢查,設置系統的各種服務

 

rpm  用於管理套件

rpm -ivh package.rpm    #安裝一個rpm

rpm -qa    #顯示系統中所有已經安裝的rpm

rpm -e package_name.rpm    #刪除一個rpm

 

yum  是一個在FedoraRedHat以及SUSE中的Shell前端軟體包管理器;基於RPM包管理,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝yum提供了查找、安裝、刪除某一個、一組甚至全部軟體包的命令,而且命令簡潔而又好記

yum install package_name    #下載並安裝一個rpm

yum remove package_name    #刪除一個rpm

yum update package_name.rpm    #更新當前系統中所有安裝的rpm 

yum update package_name    #更新一個rpm

 

Linux部署apache服務的步驟:示例

1.準備環境

      關閉防火牆:service iptables stopchkconfig iptables off

      關閉selinuxsetenforce 0SELINUX=disabled

      配置ipvi /etc/sysconfig/network-scripts/ifcfg-eth0

2.安裝軟體包:yum install httpd -y

3.修改配置文件:vim /etc/httpd/conf/httpd.conf  #記住Listen和DocumentRoot

          cd /var/www/html/DocumentRoot

          touch test.txt

          echo “部署服務” > test.txt

          echo “預設頁面” > index.html

4.重啟服務:service httpd restart

5.打開瀏覽器:http://服務端ip:埠Listen/test.txtindex.html


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

-Advertisement-
Play Games
更多相關文章
  • 一、前言 開發環境: 部署環境 ASP.NET Core 示例項目 項目創建完成後,需要修改Program.cs文件手動指定啟動的Url為:http://*:5000 http://*:5000 可以相容 http://localhost:5000,http://127.0.0.1:5000,htt ...
  • ASP.NET Core的實時庫: SignalR -- 預備知識 ...
  • 記憶體映射數據處理類主要函數及變數如下: 科學數據結構體定義如下: 圖像數據結構體如下: ...
  • PS:之前因為需要擴展了微信和QQ的認證,使得網站是可以使用QQ和微信直接登錄。github 傳送門 。然後有小伙伴問,能否讓這個配置信息(appid, appsecret)按需改變,而不是在 ConfigureServices 裡面寫好。 先上 官方文檔 : https://docs.micros ...
  • 在excel中設置保存之後的編碼格式,需要獲取到Microsoft.Office.Interop.Excel.Workbook然後設置其中的webOpetions的編碼格式就可以了。 在word中設置編碼格式,可以直接在獲取到的Microsoft.Office.Interop.Word.Docume ...
  • 使用iSCSI服務部署網路存儲 iSCSI技術實現了物理硬碟設備與TCP/IP網路協議的相互結合,使得用戶可以通過互聯網方便地訪問遠程機房提供的共用存儲資源.下麵介紹如何在Linux上部署iSCSI服務端程式,並分別給予Linux系統和Windows系統來訪問遠程的存儲資源. 實驗環境 主機名稱 | ...
  • CentOS6.5查看防火牆的狀態: 1 [linuxidc@localhost ~]$service iptable status 1 [linuxidc@localhost ~]$service iptable status 1 [linuxidc@localhost ~]$service ip ...
  • df     df用於顯示文件系統的整體磁碟使用量。 基本用法 其常用選項如下所示: | 選項 | 說明 | | | | | a, all | 顯示所有文件系統,包括/proc等虛擬文件系統 | | h, human readable | 以易讀的形式進行顯示 | | k | 以 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...